Timeline



Dec 16, 2004:

5:05 PM Changeset in webkit [8235] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Chris

Fix for this bug:

<rdar://problem/3924888> REGRESSION (Mail): Hitting return key at end of line does not insert visible newline

  • khtml/editing/htmlediting.cpp: (khtml::InsertParagraphSeparatorCommand::doApply): Tweaked code I added just before to fix 3924486, so that it checks the downstream node for the starting position.
4:57 PM Changeset in webkit [8234] by kocienda
  • 3 edits in trunk/WebCore

Reviewed by Chris

Added new createBreakElement() function that makes creating a <br> element a one-liner.
Converted all the code that used to call the DocumentImpl, and dealt with the exceptionCode,
over to this new helper.

  • khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::moveNodesAfterNode): Now uses new helper function. (khtml::InsertLineBreakCommand::doApply): Ditto. (khtml::InsertParagraphSeparatorCommand::doApply): Ditto. (khtml::InsertParagraphSeparatorInQuotedContentCommand::doApply): Ditto. (khtml::ReplaceSelectionCommand::doApply): Ditto. (khtml::createBreakElement): New helper.
  • khtml/editing/htmlediting.h: Ditto.
4:10 PM Changeset in webkit [8233] by darin
  • 4 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fixed <rdar://problem/3920764> Unimplemented String methods toLocaleLowerCase and toLocaleUpperCase
  • kjs/string_object.h: Added toLocaleLowerCase and toLocaleUpperCase.
  • kjs/string_object.cpp: (StringProtoFuncImp::call): Made locale versions be synonmyms for the non-locale-specific versions.
  • kjs/string_object.lut.h: Regenerated.
4:03 PM Changeset in webkit [8232] by hyatt
  • 2 edits
    2 adds in trunk

Fix a bug where vertical-align values that depended on their parent's value went crazy if the parent was
vertical-align top or bottom. The bug is 3771007, bankofamerica's ebills page.

Reviewed by kocienda

  • khtml/rendering/render_object.cpp: (RenderObject::getVerticalPosition):
3:39 PM Changeset in webkit [8231] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for these bugs:

<rdar://problem/3924486> REGRESSION (Mail): Hitting return key does not insert visible newline
<rdar://problem/3924579> REGRESSION (Mail): After deleting, hitting return key does not insert visible newline

  • khtml/editing/htmlediting.cpp: (khtml::InsertParagraphSeparatorCommand::doApply): For the first bug, detect when inserting a <p> will make a visible <br> collapse. For the second bug, move the code that inserts the new <p> after a check which may move the node used as the reference node for the insertion. Also change this code to insert the <p> after the last sibling of the starting position, to move it past the nodes we're going to want to shift into the new <p>.
2:44 PM Changeset in webkit [8230] by sullivan
  • 2 edits in trunk/WebKit

Reviewed by Chris.

One of the assertions from my previous checkin fired, so
I made this code more robust.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge _preferences]): new helper method, returns global preferences if webView is nil, otherwise returns webView's preferences (-[WebBridge getObjectCacheSize]): use new helper method, remove now-unnecessary assert (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): ditto
2:10 PM Changeset in webkit [8229] by darin
  • 8 edits in trunk/WebCore

Reviewed by Ken.

  • use <p> elements rather than <br> when pasting plain text; also use margin of 0 rather than 0.1 em after talking this over with Dave and Ken
  • khtml/editing/htmlediting.h: Added createDefaultParagraphElement and createBlockPlaceholderElement.
  • khtml/editing/htmlediting.cpp: (khtml::CompositeEditCommand::insertBlockPlaceholderIfNeeded): Use new createBlockPlaceholderElement helper so this can share code with the plain-text conversion code. (khtml::InsertParagraphSeparatorCommand::createParagraphElement): Use new createDefaultParagraphElement helper so this can share code with the plain-text conversion code. (khtml::createDefaultParagraphElement): Added. (khtml::createBlockPlaceholderElement): Added.
  • khtml/editing/markup.cpp: (khtml::createFragmentFromText): Use paragraphs rather than <br> elements for pasting plain text.
  • regenerated these files with the newer gperf
  • khtml/css/cssproperties.c: Regenerated.
  • khtml/css/cssvalues.c: Regenerated.
  • khtml/misc/htmlattrs.c: Regenerated.
  • khtml/misc/htmltags.c: Regenerated.
1:33 PM Changeset in webkit [8228] by sullivan
  • 12 edits in trunk/WebKit

Reviewed by Darin.

  • fixed <rdar://problem/3913523> Mail needs SPI for adding tooltips to links
  • cleaned up some calls to +[WebPreferences standardPreferences] that should have been using -[WebView preferences]

This adds a (currently SPI-only) new feature that shows the URL of the link
under the mouse in a toolTip. I tested this in Safari, but we're adding this
feature for Mail, and Safari won't use it (unless of course you know the
magic defaults command)

  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView start]): use -[WebView preferences] instead of +[WebPreferences standardPreferences]
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge getObjectCacheSize]): ditto (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): ditto
  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate willCacheResponse:]): ditto
  • WebView.subproj/WebFrame.m: (-[WebFrame _transitionToCommitted:]): ditto (-[WebFrame _loadItem:withLoadType:]): ditto
  • WebView.subproj/WebHTMLViewInternal.h: private struct now keeps ivar for cached value of showsURLsInToolTips so it doesn't have look it up in preferences a zillion times
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _updateMouseoverWithEvent:]): if private->showsURLsInToolTips is true, set the toolTip from the URL. Fall back to showing the title attribute in case some element has a title attribute but no URL. (-[WebHTMLView _mayStartDragAtEventLocation:]): use -[WebView preferences] instead of +[WebPreferences standardPreferences] (-[WebHTMLView _resetCachedWebPreferences:]): get a fresh value for private->showsURLsInToolTips (-[WebHTMLView initWithFrame:]): call _resetCachedWebPreferences the first time, and listen for WebPreferencesChanged notifications (-[WebHTMLView _handleStyleKeyEquivalent:]): use -[WebView preferences] instead of +[WebPreferences standardPreferences]
  • WebView.subproj/WebPreferenceKeysPrivate.h: added WebKitShowsURLsInToolTipsPreferenceKey
  • WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]): initialize WebKitShowsURLsInToolTipsPreferenceKey to 0 (-[WebPreferences showsURLsInToolTips]): return WebKitShowsURLsInToolTipsPreferenceKey value (-[WebPreferences setShowsURLsInToolTips:]): set WebKitShowsURLsInToolTipsPreferenceKey value
  • WebView.subproj/WebPreferencesPrivate.h: add declarations for showsURLsInToolTips and setter
  • WebView.subproj/WebTextView.m: (-[WebTextView _preferences]): new helper method that gets preferences from webView if there is a webView, otherwise gets global preferences (-[WebTextView setFixedWidthFont]): use new helper method rather than always using global preferences (-[WebTextView initWithFrame:]): observe WebPreferencesChangedNotification instead of unnecessarily general NSUserDefaultsChangedNotification
1:15 PM Changeset in webkit [8227] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Hyatt

Fix for this bug:

<rdar://problem/3924291> REGRESSION (Mail): Crash deleting content following a <p> element

  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::enclosingInlineElement): Fixed problem in this function where recursive search for parent that is not an inline would skip past previous siblings of nodes which were blocks. Now it stops looking in this situation. This problem eventually caused the delete code to try to merge a node under a descendent.
11:21 AM Changeset in webkit [8226] by adele
  • 2 edits in trunk/WebCore

Change by Richard, reviewed by me.

Fix for: <rdar://problem/3923983> background image decoding prevents page with 0Kb image from finishing to load

  • khtml/misc/loader.cpp: (CachedImage::data): Added call to notifyFinished so the 0Kb image case finishes loading.
10:53 AM Changeset in webkit [8225] by adele
  • 2 edits in trunk/WebCore

Reviewed by Chris.

Fix for: <rdar://problem/3534824> VIP: some navigation links on safeway.com don't work due to a JavaScript quirk

Added a call to ObjectImp::get before Window::get just returns Undefined.
This was preventing us from getting the toString function from a Window object.

  • khtml/ecma/kjs_window.cpp: (Window::get):
10:46 AM Changeset in webkit [8224] by kocienda
  • 3 edits
    16 adds in trunk

Reviewed by John

Fix for this bug:

<rdar://problem/3918351> REGRESSION (Mail, 173-175+): Return before first char of line leaves insertion point in wrong place

  • khtml/editing/htmlediting.cpp: (khtml::InsertParagraphSeparatorCommand::doApply): Basically, did a rewrite of this function to do a better job than it was doing before. Added several test cases to prove I am on a better track.
  • khtml/editing/visible_position.cpp: (khtml::isFirstVisiblePositionInBlock): Tweaked the rules a bit to fix an issue very similar to the leaving-the-bar-node case problem I just fixed in a recent checkin (relevant markup: <p>foo</p>bar). This function was returning true for the first position in "bar". Wrong. Also tightened up other rule: Should not report true when relationship between blocks cannot be determined. (khtml::isLastVisiblePositionInBlock): Tightened up rule as above: Should not report true when relationship between blocks cannot be determined.
  • layout-tests/editing/inserting/insert-div-010-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-010.html: Added.
  • layout-tests/editing/inserting/insert-div-011-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-011.html: Added.
  • layout-tests/editing/inserting/insert-div-012-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-012.html: Added.
  • layout-tests/editing/inserting/insert-div-013-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-013.html: Added.
  • layout-tests/editing/inserting/insert-div-014-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-014.html: Added.
  • layout-tests/editing/inserting/insert-div-015-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-015.html: Added.
  • layout-tests/editing/inserting/insert-div-016-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-016.html: Added.
  • layout-tests/editing/inserting/insert-div-017-expected.txt: Added.
  • layout-tests/editing/inserting/insert-div-017.html: Added.
10:18 AM Changeset in webkit [8223] by kocienda
  • 1 edit in trunk/WebCore/khtml/editing/visible_text.h

Failed to check in this file after changing it; I hate having too many changes in my tree at once

10:04 AM Changeset in webkit [8222] by kocienda
  • 1 edit
    2 adds in trunk

Reviewed by me

Added a layout test based on my last checkin.

  • layout-tests/editing/selection/move-by-word-001-expected.txt: Added.
  • layout-tests/editing/selection/move-by-word-001.html: Added.
9:57 AM Changeset in webkit [8221] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for this bug:

<rdar://problem/3917929> REGRESSION (Mail): Command-left-arrow leaves insertion point too high after specific steps

  • khtml/editing/visible_text.cpp: (khtml::SimplifiedBackwardsTextIterator::advance): Add new check for leaving a text node and iterating backwards into a different block that is an descendent of the block containing the text node (as in leaving the "bar" node in this example: <p>foo</p>bar). (khtml::SimplifiedBackwardsTextIterator::handleNonTextNode): Call new emitNewlineForBROrText helper. (khtml::SimplifiedBackwardsTextIterator::emitNewlineForBROrText): Factor out code from handleNonTextNode, since it is called from there, and now also from advance().

Dec 15, 2004:

5:02 PM Changeset in webkit [8220] by darin
  • 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 sullivan
  • 12 edits
    2 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 hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test for large rowspans.

6:41 PM Changeset in webkit [8217] by hyatt
  • 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 hyatt
  • 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 hyatt
  • 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 hyatt
  • 3 edits
    2 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 rjw
  • 4 edits in trunk

WebKit:

Helper method to get URL of plugin view.

Reviewed by Chris.

  • Misc.subproj/WebNSViewExtras.m: (-[NSView _webViewURL]):

JavaScriptCore:

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 cblu
  • 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 hyatt
  • 2 edits
    5 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 hyatt
  • 4 edits
    2 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 vicki
  • 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 mjs
  • 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 sullivan
  • 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 sullivan
  • 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 darin
  • 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 copies
    2 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 vicki
  • 2 edits in branches/Safari-175-branch/WebCore

versioning for dot submission, WebCore-175.1

8:00 PM Changeset in webkit [8202] by vicki
  • 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 rjw
  • 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 rjw
  • 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:

JavaScriptCore:

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 sullivan
  • 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 darin
  • 34 edits
    3 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 kocienda
  • 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 hyatt
  • 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 kocienda
  • 3 edits
    2 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 kocienda
  • 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 vicki
  • 3 edits in trunk

Versions were backwards in TOT. They should read Safari 2.0 (175+), not Safari 175+ (2.0).

Note: See TracTimeline for information about the timeline view.