Timeline



Jun 8, 2006:

11:14 PM Changeset in webkit [14778] by justing
  • 1 edit in trunk/WebCore/ChangeLog

Tweaked ChangeLog

9:57 PM Changeset in webkit [14777] by justing
  • 39 edits
    26 adds in trunk

LayoutTests:

Reviewed by levi


<http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
Implement execCommand(Insert{Un}OrderedList)

Added:

  • editing/execCommand/create-list-from-range-selection-expected.checksum: Added.
  • editing/execCommand/create-list-from-range-selection-expected.png: Added.
  • editing/execCommand/create-list-from-range-selection-expected.txt: Added.
  • editing/execCommand/create-list-from-range-selection.html: Added.
  • editing/execCommand/insert-list-and-stitch-expected.checksum: Added.
  • editing/execCommand/insert-list-and-stitch-expected.png: Added.
  • editing/execCommand/insert-list-and-stitch-expected.txt: Added.
  • editing/execCommand/insert-list-and-stitch.html: Added.
  • editing/execCommand/insert-list-with-id-expected.checksum: Added.
  • editing/execCommand/insert-list-with-id-expected.png: Added.
  • editing/execCommand/insert-list-with-id-expected.txt: Added.
  • editing/execCommand/insert-list-with-id.html: Added.
  • editing/execCommand/remove-list-from-range-selection-expected.checksum: Added.
  • editing/execCommand/remove-list-from-range-selection-expected.png: Added.
  • editing/execCommand/remove-list-from-range-selection-expected.txt: Added.
  • editing/execCommand/remove-list-from-range-selection.html: Added.
  • editing/execCommand/remove-list-items-expected.checksum: Added.
  • editing/execCommand/remove-list-items-expected.png: Added.
  • editing/execCommand/remove-list-items-expected.txt: Added.
  • editing/execCommand/remove-list-items.html: Added.
  • editing/execCommand/switch-list-type-expected.checksum: Added.
  • editing/execCommand/switch-list-type-expected.png: Added.
  • editing/execCommand/switch-list-type-expected.txt: Added.
  • editing/execCommand/switch-list-type.html: Added.


Fixes:

  • editing/pasteboard/drag-drop-modifies-page-expected.txt:
  • editing/pasteboard/paste-list-001-expected.txt:
  • editing/selection/drag-to-contenteditable-iframe-expected.checksum:
  • editing/selection/drag-to-contenteditable-iframe-expected.png:
  • editing/selection/drag-to-contenteditable-iframe-expected.txt:
  • editing/style/block-style-005-expected.txt:
  • fast/text/textIteratorNilRenderer-expected.checksum:
  • fast/text/textIteratorNilRenderer-expected.png:
  • fast/text/textIteratorNilRenderer-expected.txt:
  • editing/deleting/delete-line-016-expected.checksum:
  • editing/deleting/delete-line-016-expected.png:
  • editing/deleting/delete-line-016-expected.txt:

WebCore:

Reviewed by levi


<http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
Implement execCommand(Insert{Un}OrderedList)

  • WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
  • dom/Position.cpp: (WebCore::hasRenderedNonAnonymousDescendantsWithHeight): Added. A block with height is only a candidate if this is false. This should fix the problems getting carets into empty blocks. (WebCore::Position::inRenderedContent):
  • editing/AppendNodeCommand.cpp: (WebCore::AppendNodeCommand::doApply):
  • editing/CompositeEditCommand.cpp: (WebCore::hasARenderedDescendant): (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet have no rendered descendants. Fixed the pruning rule to avoid removing a node like this. (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to each other if they aren't already, as a convenience. (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection. (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
  • editing/CompositeEditCommand.h:
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should continue to happen until it is no longer possible. (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node wouldn't always avoid removing the start block.
  • editing/InsertListCommand.cpp: Added. (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list into a list. (WebCore::InsertListCommand::InsertListCommand): (WebCore::InsertListCommand::modifyRange): (WebCore::InsertListCommand::doApply):
  • editing/InsertListCommand.h: Added. (WebCore::InsertListCommand::):
  • editing/InsertNodeBeforeCommand.cpp: (WebCore::InsertNodeBeforeCommand::doApply):
  • editing/InsertParagraphSeparatorCommand.cpp:
  • editing/JSEditor.cpp:
  • editing/TextIterator.cpp: (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the iterator ends at the start of that node. used to create the iterator.
  • editing/VisiblePosition.cpp: (WebCore::VisiblePosition::next): (WebCore::VisiblePosition::previous):
  • editing/VisiblePosition.h: Added a parameter to next/previous to prevent them from going outside the current editable region.
  • editing/htmlediting.cpp: (WebCore::highestAncestor): (WebCore::enclosingList): (WebCore::enclosingListChild): (WebCore::outermostEnclosingList): (WebCore::createListItemElement):
  • editing/htmlediting.h:
  • page/Frame.cpp: (WebCore::Frame::selectionListState): Added.
  • page/Frame.h:

WebKit:

Reviewed by levi


<http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
Implement execCommand(Insert{Un}OrderedList)

  • WebView/WebFrame.m: (-[WebFrame _findFrameWithSelection]): Removed an assertion that we only have one frame with a selection.
  • WebView/WebView.m: (-[WebView selectedFrame]): Ditto.
6:06 PM Changeset in webkit [14776] by thatcher
  • 2 edits
    2 adds in trunk/WebKitSite

Reviewed by Darin.

Include our own copies of the BSD and LGPL licenses.

  • coding/bsd-license.html: Added.
  • coding/lgpl-license.html: Added.
  • nav.inc: link to our copies of the licenses
3:10 PM Changeset in webkit [14775] by harrison
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Geoff and John.

<rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)

  • fast/dom/setPrimitiveValue-expected.checksum: Added.
  • fast/dom/setPrimitiveValue-expected.png: Added.
  • fast/dom/setPrimitiveValue-expected.txt: Added.
  • fast/dom/setPrimitiveValue.html: Added.

WebCore:

Reviewed by Geoff and John.

<rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)


Problem was the primitive value was getting reset to a generic state before the parameter
check that relies on that state.

Test: fast/dom/setPrimitiveValue.html

  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::setFloatValue): (WebCore::CSSPrimitiveValue::setStringValue): Move parameter checks ahead of call to cleanup().
2:38 PM Changeset in webkit [14774] by aliceli1
  • 4 adds in trunk/LayoutTests/fast/dom/Range

added tests for Range.isPointInRange and Range.comparePoint

2:35 PM Changeset in webkit [14773] by aliceli1
  • 4 edits in trunk/WebCore

Reviewed by Justin.

  • fixed <rdar://problem/4578115> support Range.isPointInRange
  • fixed <rdar://problem/4578123> support Range.comparePoint
  • dom/Range.cpp: (WebCore::Range::isPointInRange): added implementation (WebCore::Range::comparePoint): added implementation
  • dom/Range.h: added prototypes
  • dom/Range.idl: added bindings
2:20 PM Changeset in webkit [14772] by thatcher
  • 1 edit in trunk/WebKit/WebView/WebView.m

Build fix.

2:05 PM Changeset in webkit [14771] by thatcher
  • 6 edits in trunk/WebKit

Reviewed by Darin and John.

<rdar://problem/3600734> API: please add a way to turn vertical scrollbar
always on (for Mail, to avoid reflow when typing)

Adds new methods to lock the scrolling mode on WebDynamicScrollBarsView.
Locking the scroll mode prevents WebCore from changing it as needed.
Also adds an SPI on WebView that will lock the "always on" mode
for each scroller.

  • WebKit.xcodeproj/project.pbxproj:
  • WebView/WebDynamicScrollBarsView.h:
  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView setAllowsScrolling:]): (-[WebDynamicScrollBarsView allowsScrolling]): (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): (-[WebDynamicScrollBarsView setScrollingMode:]): (-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]): (-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]): (-[WebDynamicScrollBarsView setScrollingModesLocked:]): (-[WebDynamicScrollBarsView horizontalScrollingModeLocked]): (-[WebDynamicScrollBarsView verticalScrollingModeLocked]):
  • WebView/WebView.m: (-[WebView setAlwaysShowVerticalScroller:]): (-[WebView alwaysShowVerticalScroller]): (-[WebView setAlwaysShowHorizontalScroller:]): (-[WebView alwaysShowHorizontalScroller]):
  • WebView/WebViewPrivate.h:
9:43 AM Changeset in webkit [14770] by darin
  • 6 edits in trunk

WebCore:

Reviewed by Justin.

  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]): Changed to call nodeInfoAtPoint directly. (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly. Also added code to convert coordinates so it works for points that are in nodes in subframes.
  • page/Frame.cpp: (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection endpoints in another document. (WebCore::Frame::setSelection): Ditto.

WebKit:

Reviewed by Justin.

  • WebView/WebHTMLView.m: (-[WebHTMLView _topHTMLView]): Added. (-[WebHTMLView _isTopHTMLView]): Added. (-[WebHTMLView _insideAnotherHTMLView]): Changed to use _topHTMLView. (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): Forward to the top HTML view, so that only the top view ever starts a dragging operation. Change dragging code to not assume that the dragged node is in the current view's document. Added checks that the node is an element in a couple places and coordinate conversions. (-[WebHTMLView _mayStartDragAtEventLocation:]): Forward to the top HTML view. (-[NSArray addMouseMovedObserver]): Change to do nothing when the dataSource field is 0, since we now use the dataSource field to get to the WebView. (-[NSArray removeMouseMovedObserver]): Added a comment. (-[NSArray dragImage:at:offset:event:pasteboard:source:slideBack:]): Forward to the top HTML view. (-[NSArray draggingSourceOperationMaskForLocal:]): Assert that it's the top HTML view. (-[NSArray draggedImage:movedTo:]): Ditto. (-[NSArray draggedImage:endedAt:operation:]): Ditto. (-[NSArray namesOfPromisedFilesDroppedAtDestination:]): Ditto. (-[NSArray _canProcessDragWithDraggingInfo:]): Ditto. (-[NSArray _isMoveDrag]): Ditto. (-[NSArray draggingUpdatedWithDraggingInfo:actionMask:]): Ditto. (-[NSArray draggingCancelledWithDraggingInfo:]): Ditto. (-[NSArray concludeDragForDraggingInfo:actionMask:]): Ditto. Also added code to work with the appropriate bridge when receiving a drag. This fixes the problem where the top level frame got a selection intended for the inner frame; the source of the bug. (-[NSArray elementAtPoint:allowShadowContent:]): Added code to convert the coordinates so this works properly when returning an element from an inner frame. (-[NSArray setDataSource:]): Added a call to addMouseMovedObserver, needed now that addMouseMovedObserver won't do anything if called when dataSource is nil. (-[WebHTMLView _delegateDragSourceActionMask]): Forward to the top HTML view.
  • WebView/WebView.m: (-[WebViewPrivate dealloc]): Removed code to release dragCaretBridge since that field is now gone. (-[WebView moveDragCaretToPoint:]): Always call the main frame's bridge, since the drag caret is now a page-level item. Later we'll move it to the page bridge. (-[WebView removeDragCaret]): Ditto.
9:36 AM Changeset in webkit [14769] by darin
  • 1 edit in trunk/LayoutTests/ChangeLog

Added change log entry that I apparently forgot.

Jun 7, 2006:

9:04 PM Changeset in webkit [14768] by justing
  • 17 edits in trunk

LayoutTests:

Reviewed by levi

  • editing/deleting/delete-4038408-fix-expected.txt:
  • editing/input/attributed-substring-from-range-lines-expected.txt:
  • editing/inserting/insert-3654864-fix-expected.txt:
  • editing/inserting/insert-3659587-fix-expected.txt:
  • editing/inserting/insert-3775316-fix-expected.txt:
  • editing/inserting/insert-at-end-01-expected.txt:
  • editing/inserting/insert-at-end-02-expected.txt:
  • editing/inserting/insert-br-001-expected.txt:
  • editing/inserting/insert-br-005-expected.txt:

WebCore:

Reviewed by levi


Fixed some comments and removed an unused variable.

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::removeBlockPlaceholder): Don't remove a br if it isn't at the start of a block, since it isn't really a "block placeholder".
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData): (WebCore::DeleteSelectionCommand::mergeParagraphs): (WebCore::DeleteSelectionCommand::doApply):
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
  • editing/htmlediting.cpp:
6:43 PM Changeset in webkit [14767] by hyatt
  • 5 edits in trunk/WebKit

Add support for custom highlighting to WebKit.

Reviewed by justin

  • WebCoreSupport/WebFrameBridge.m: (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:]):
  • WebView/WebHTMLView.m: (-[WebHTMLView _highlighterForType:]):
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h:
6:41 PM Changeset in webkit [14766] by hyatt
  • 8 edits in trunk/WebCore

Add support for custom highlighting. This is all ifdefed to be Mac-only.

Reviewed by justin

  • WebCore.xcodeproj/project.pbxproj:
  • bridge/mac/FrameMac.h:
  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::paintCustomHighlight):
  • bridge/mac/WebCoreFrameBridge.h:
  • platform/mac/ClipboardMac.h:
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintCustomHighlight):
  • rendering/InlineTextBox.h:
6:25 PM Changeset in webkit [14765] by adele
  • 17 edits
    2 adds in trunk

WebCore:

Reviewed by Hyatt

Added support for cross-platform resize property.

  • platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we already cache this info when we handle mouse down and mouse up.
  • platform/mac/MouseEventMac.mm: ditto.
  • platform/win/TemporaryLinkStubs.cpp: ditto.
  • page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
  • page/FrameView.cpp: (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method. (WebCore::FrameView::mousePressed): Added.
  • page/FrameView.h: Added mousePressed.
  • rendering/RenderTheme.h: Removed paintResizeControl. Since its not dependent on the theme, the layer can just paint this.
  • rendering/RenderTheme.cpp: ditto.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage. (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage. (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one. (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
  • rendering/RenderLayer.h: Added m_resizeCornerImage. Important to have one per-layer for when we allow more customization.
  • platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource): Loads image resources.

WebKit:

Reviewed by Hyatt.

Added resources for missingImage and textAreaResizeCorner.

  • COM/WebKitDLL.cpp: (loadResourceIntoArray): Added. Returns a DeprecatedByteArray with the resource's data.
  • WebKit.vcproj/WebKit.rc: Added missing image and resize pngs as resources.
  • WebKit.vcproj/WebKit.vcproj: Added pngs.
  • WebKit.vcproj/missingImage.png: Added.
  • WebKit.vcproj/resource.h: Added entries for pngs.
  • WebKit.vcproj/textAreaResizeCorner.png: Added.
5:18 PM Changeset in webkit [14764] by hyatt
  • 4 edits in trunk/WebKit

Add SPI for setting and removing custom highlighters.

Reviewed by Tim H

  • WebView/WebHTMLView.m: (-[WebTextCompleteController dealloc]): (-[WebHTMLView _setHighlighter:ofType:]): (-[WebHTMLView _removeHighlighterOfType:]):
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h:
4:08 PM Changeset in webkit [14763] by hyatt
  • 7 edits in trunk/WebCore

Add support for a new property for custom highlighting. This patch just
adds support for the parsing of the property. It doesn't do anything yet.

Reviewed by beth

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPropertyNames.in:
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue):
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • rendering/render_style.cpp: (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): (WebCore::StyleCSS3InheritedData::operator==): (WebCore::RenderStyle::diff):
  • rendering/render_style.h: (WebCore::RenderStyle::highlight): (WebCore::RenderStyle::setHighlight): (WebCore::RenderStyle::initialHighlight):
3:59 PM Changeset in webkit [14762] by ggaren
  • 1 edit
    1 delete in trunk/JavaScriptCore

Removed API directory I prematurely/accidentally added.

  • API: Removed.
9:33 AM Changeset in webkit [14761] by darin
  • 2 edits
    4 adds in trunk

Fix suggested by Rob Buis. Reviewed by Darin.

Test: fast/css/font-shorthand-weight-only.html

  • css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change made to fix bug 5564.
9:29 AM Changeset in webkit [14760] by darin
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Hyatt, tweaked by Mitz.

  • fast/table/text-field-baseline-expected.checksum: Added.
  • fast/table/text-field-baseline-expected.png: Added.
  • fast/table/text-field-baseline-expected.txt: Added.
  • fast/table/text-field-baseline.html: Added.

WebCore:

Reviewed by Hyatt.

Test: fast/table/text-field-baseline.html

  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just use their baseline.
9:26 AM Changeset in webkit [14759] by darin
  • 5 edits
    4 adds in trunk

LayoutTests:

Reviewed by Hyatt.

  • fast/block/float/nopaint-after-layer-destruction-expected.checksum: Added.
  • fast/block/float/nopaint-after-layer-destruction-expected.png: Added.
  • fast/block/float/nopaint-after-layer-destruction-expected.txt: Added.
  • fast/block/float/nopaint-after-layer-destruction.html: Added.

WebCore:

Reviewed by Hyatt (concept) and Darin (some coding details).

Pixel test: fast/block/float/nopaint-after-layer-destruction.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag in the block's FloatingObject for the given float and calls setChildNeedsLayout.
  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp: (WebCore::blockThatPaintsFloat): Added this helper function. (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float gains or loses its layer.

Jun 6, 2006:

8:14 PM Changeset in webkit [14758] by ddkilzer
  • 2 edits in trunk/WebKitTools

WebKitTools:

Reviewed by darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9322
Teach svn-create-patch to sort its output

  • Scripts/svn-create-patch: Clean up perl code. Sort patch output alphabetically by text files first, then by binary files.
8:13 PM Changeset in webkit [14757] by darin
  • 7 edits
    5 adds in trunk

LayoutTests:

Reviewed by Hyatt.

  • fast/repaint/containing-block-position-change-expected.checksum: Added.
  • fast/repaint/containing-block-position-change-expected.png: Added.
  • fast/repaint/containing-block-position-change-expected.txt: Added.
  • fast/repaint/containing-block-position-change.html: Added.

WebCore:

Reviewed by Hyatt.

Test (repaint): fast/repaint/containing-block-position-change.html

  • manual-tests/containing-block-position-chage.html: Added.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from the RenderCanvas to RenderView rename. (WebCore::RenderBlock::removePositionedObject): Added a return immediately after removing the object. (WebCore::RenderBlock::removePositionedObjects): Added.
  • rendering/RenderBlock.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned descendants from the positioned objects list of their current containing block when they are going to have a new one as a result of this block's position property changing.
  • rendering/RenderObject.h: (WebCore::RenderObject::removePositionedObjects):
8:12 PM Changeset in webkit [14756] by darin
  • 4 edits in trunk/LayoutTests
  • fast/repaint/table-extra-bottom-grow.html: Removed unneeded line of code.
  • fast/repaint/table-extra-bottom-grow-expected.png: Regenerated.
  • fast/repaint/table-extra-bottom-grow-expected.checksum: Regenerated.
5:25 PM Changeset in webkit [14755] by thatcher
  • 1 copy in tags/WebCore-418.13/WebCore

Tag for WebCore 418.13 (part 2 of 2.)

5:25 PM Changeset in webkit [14754] by thatcher
  • 1 add in tags/WebCore-418.13

Tag for WebCore 418.13 (part 1 of 2.)

5:19 PM Changeset in webkit [14753] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Versioning

5:13 PM Changeset in webkit [14752] by ggaren
  • 5 edits in branches/Safari-2-0-branch/WebCore

Fix by Maciej, reviewed by Darin. I provided desk space.


Because the garbage collector suspends a thread while marking its stack,
mark methods must not call malloc, because they may end up stuck,
trying to acquire the malloc lock from a suspended thread.

The fix here is:
(1) Use a data member rather than a dictionary to track nodes that are
in the process of marking their subtrees.
(2) Avoid the case wheter calling getDOMNodeForDocument might allocate
the staticDOMNodesPerDocument dictionary.


  • khtml/ecma/kjs_binding.cpp: (KJS::ScriptInterpreter::domObjects): (KJS::ScriptInterpreter::domNodesPerDocument): (KJS::ScriptInterpreter::getDOMNodeForDocument):
  • khtml/ecma/kjs_dom.cpp: (DOMNode::mark):
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::NodeImpl):
  • khtml/xml/dom_nodeimpl.h:
5:09 PM Changeset in webkit [14751] by justing
  • 86 edits
    12 adds in trunk

LayoutTests:

Reviewed by levi

Added to demonstrate fixes:

  • editing/pasteboard/merge-after-delete-expected.checksum: Added.
  • editing/pasteboard/merge-after-delete-expected.png: Added.
  • editing/pasteboard/merge-after-delete-expected.txt: Added.
  • editing/pasteboard/merge-after-delete.html: Added.
  • editing/inserting/line-break-expected.checksum: Added.
  • editing/inserting/line-break-expected.png: Added.
  • editing/inserting/line-break-expected.txt: Added.
  • editing/inserting/line-break.html: Added.
  • editing/inserting/multiple-lines-selected-expected.checksum: Added.
  • editing/inserting/multiple-lines-selected-expected.png: Added.
  • editing/inserting/multiple-lines-selected-expected.txt: Added.
  • editing/inserting/multiple-lines-selected.html: Added.


Fixed:

  • editing/deleting/collapse-whitespace-3587601-fix-expected.txt:
  • editing/deleting/delete-3775172-fix-expected.txt:
  • editing/deleting/delete-3928305-fix-expected.txt:
  • editing/deleting/delete-3959464-fix-expected.checksum:
  • editing/deleting/delete-3959464-fix-expected.png:
  • editing/deleting/delete-3959464-fix-expected.txt:
  • editing/deleting/delete-4038408-fix-expected.checksum:
  • editing/deleting/delete-4038408-fix-expected.png:
  • editing/deleting/delete-4038408-fix-expected.txt:
  • editing/deleting/delete-4038408-fix.html:
  • editing/deleting/delete-at-paragraph-boundaries-002-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-011-expected.checksum:
  • editing/deleting/delete-at-paragraph-boundaries-011-expected.png:
  • editing/deleting/delete-at-paragraph-boundaries-011-expected.txt:
  • editing/deleting/delete-block-contents-001-expected.txt:
  • editing/deleting/delete-block-contents-002-expected.txt:
  • editing/deleting/delete-block-contents-003-expected.txt:
  • editing/deleting/delete-br-011-expected.checksum:
  • editing/deleting/delete-br-011-expected.png:
  • editing/deleting/delete-br-011-expected.txt:
  • editing/deleting/delete-image-004-expected.txt:
  • editing/deleting/delete-line-010-expected.txt:
  • editing/deleting/delete-line-015-expected.txt:
  • editing/deleting/delete-select-all-001-expected.checksum:
  • editing/deleting/delete-select-all-001-expected.png:
  • editing/deleting/delete-select-all-001-expected.txt:
  • editing/deleting/delete-select-all-002-expected.txt:
  • editing/deleting/delete-select-all-003-expected.checksum:
  • editing/deleting/delete-select-all-003-expected.png:
  • editing/deleting/delete-select-all-003-expected.txt:
  • editing/execCommand/insertImage-expected.checksum:
  • editing/execCommand/insertImage-expected.png:
  • editing/input/attributed-substring-from-range-lines-expected.txt:
  • editing/input/text-input-controller-expected.txt:
  • editing/inserting/insert-3654864-fix-expected.txt:
  • editing/inserting/insert-3659587-fix-expected.txt:
  • editing/inserting/insert-3775316-fix-expected.txt:
  • editing/inserting/insert-after-delete-001-expected.txt:
  • editing/inserting/insert-at-end-01-expected.txt:
  • editing/inserting/insert-at-end-02-expected.txt:
  • editing/inserting/insert-br-001-expected.txt:
  • editing/inserting/insert-br-005-expected.txt:
  • editing/pasteboard/4076267-3-expected.txt:
  • editing/pasteboard/4076267-expected.txt:
  • editing/pasteboard/drag-drop-modifies-page-expected.txt:
  • editing/pasteboard/paste-4035648-fix-expected.txt:
  • editing/pasteboard/paste-4039777-fix-expected.checksum:
  • editing/pasteboard/paste-4039777-fix-expected.png:
  • editing/pasteboard/paste-4039777-fix-expected.txt:
  • editing/pasteboard/paste-match-style-001-expected.txt:
  • editing/pasteboard/paste-match-style-002-expected.txt:
  • editing/pasteboard/smart-paste-006-expected.txt:
  • editing/pasteboard/smart-paste-007-expected.txt:
  • editing/selection/drag-to-contenteditable-iframe-expected.txt:
  • editing/style/block-style-005-expected.txt:
  • editing/style/typing-style-002-expected.txt:
  • editing/unsupported-content/list-delete-001-expected.checksum:
  • editing/unsupported-content/list-delete-001-expected.png:
  • editing/unsupported-content/list-delete-001-expected.txt:
  • editing/unsupported-content/list-delete-002-expected.checksum:
  • editing/unsupported-content/list-delete-002-expected.png:
  • editing/unsupported-content/list-delete-002-expected.txt:
  • editing/unsupported-content/table-delete-001-expected.checksum:
  • editing/unsupported-content/table-delete-001-expected.png:
  • editing/unsupported-content/table-delete-001-expected.txt:
  • editing/unsupported-content/table-delete-003-expected.checksum:
  • editing/unsupported-content/table-delete-003-expected.png:
  • editing/unsupported-content/table-delete-003-expected.txt:
  • fast/text/attributed-substring-from-range.html:

WebCore:

Reviewed by levi

  • dom/Node.cpp: (WebCore::Node::firstDescendant): Added.
  • dom/Node.h:
  • dom/Range.cpp: Added a constructor that takes in Positions. (WebCore::Range::Range):
  • dom/Range.h:
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::insertNodeAt): Let this function insert children into empty containers. Calls canHaveChildrenForEditing. (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing. (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the replacement so that moveParagraph's callers have a valid destination after the move.
  • editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand, made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Removed m_startNode, used a local variable. (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion. (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up front and keep track of it as nodes and text are removed. (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode. (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand. Update m_endingPosition as we remove nodes. (WebCore::DeleteSelectionCommand::deleteTextFromNode): Update m_endingPosition as we delete text. (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block. Cleaned up. (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph clobbers the old one. (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after deletion. Make the placeholder decision before we do special element expansion.
  • editing/DeleteSelectionCommand.h:
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned up the code.
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do a merge (added a testcase).
  • editing/RebalanceWhitespaceCommand.cpp: (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): Ditto. Merge even when the incoming fragment has interchange newlines (added a testcase). Merge when the selection being pasted into starts at the start of a block because not doing so would leave one or more hanging empty blocks. (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Rebalance whitespace using rebalanceWhitespaceAt because rebalanceWhitespace requires a selection, and a selection can't be created until whitespace has been rebalanced.
  • editing/htmlediting.cpp: (WebCore::canHaveChildrenForEditing): Added.
  • editing/htmlediting.h:
5:03 PM Changeset in webkit [14750] by bdakin
  • 6 edits in trunk/WebCore

Reviewed by Maciej.

Fix for <rdar://problem/4570475> Dashboard regions do not scale for
non-1.0 scale factors.

No test cases added since this only affects non-1.0 resolution
scale factors.

  • platform/FloatRect.cpp: (WebCore::FloatRect::scale): Added new function that scales a rect's origin and size by a given factor.
  • platform/FloatRect.h:
  • platform/IntRect.cpp: (WebCore::IntRect::scale): Same as above.
  • platform/IntRect.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::addDashboardRegions): After the bounds and clip rects on the Dashboard region have been calculated, get the user space scale factor, and if it is not 1.0, scale the rects.
4:12 PM Changeset in webkit [14749] by brmorris
  • 4 edits in S60/trunk

2006-06-06 Bradley <bradley.morrison@nokia.com>

Reviewed by dacarson


  • WebKit\group\icons.mk


Added tabs back to icons.mk


  • JavaScriptCore\group\Bwinscw\JAVASCRIPTCOREU.DEF
  • WebCore\BWINS\WEBCOREU.DEF


Regenerated def files

3:58 PM Changeset in webkit [14748] by sullivan
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.


  • fixed <rdar://problem/4566087> REGRESSION (420+): Crash occurs while completing a find again query at http://www.apple.com/ (RenderObject::repaint(bool))


This wasn't a new problem in the code, but the recent use of DocumentMarkers for find results brought
it to the surface.

  • dom/Document.h: Use a RefPtr<Node> instead of a Node* in MarkerMap, so the node will be retained
  • dom/Document.cpp: (WebCore::Document::removeMarkers): Add a .get() to compensate for using RefPtr. Also, only repaint if this node actually had a marker removed. (WebCore::Document::repaintMarkers): Add a .get() to compensate for using RefPtr.
3:28 PM Changeset in webkit [14747] by adele
  • 2 edits in trunk/WebKit

Reviewed by Justin.

  • COM/WebView.cpp: (WebView::keyPress): Added case for VK_RETURN.
1:28 PM Changeset in webkit [14746] by brmorris
  • 2 edits in S60/trunk

2006-06-06 Sachin <sachin.padma@nokia.com>

Reviewed by Zalan/Bradley


Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9332


  • WebKit\group\icons.mk


Search for GCCE in $(PLATFORM), not ARMV5.

12:10 PM Changeset in webkit [14745] by brmorris
  • 5 edits in S60/trunk

2006-06-06 Sachin <sachin.padma@nokia.com>

Reviewed by Zalan/Bradley


Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9332


  • WebKit\group\icons.mk
  • WebKit\group\webkit.mmp
  • S60WebUi\WebUi\group\WebUi.mmp


Remove relative include paths for data_caging_paths.hrh,
rely on include path instead.


  • S60Internals\S60Headers.zip


Moved data_caging_paths.hrh out of oem to \epoc32\include.

11:26 AM Changeset in webkit [14744] by andersca
  • 3 edits
    2 adds in trunk

WebCore:

2006-06-06 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9325
clientWidth/clientHeight on document element in strict mode should return visible frame size


  • dom/Element.cpp: (WebCore::Element::clientWidth): (WebCore::Element::clientHeight): If we're the document element, and in strict mode, return the visible size of the frame.


LayoutTests:

2006-06-06 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9325
clientWidth/clientHeight on document element in strict mode should return visible frame size

  • fast/dom/client-width-height-expected.txt: Added.
  • fast/dom/client-width-height.html: Added.
10:55 AM Changeset in webkit [14743] by andersca
  • 7 edits in trunk

WebCore:

2006-06-06 Anders Carlsson <acarlsson@apple.com>

Reviewed by John.

  • bridge/mac/WebCoreFrameBridge.h:
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge containsPlugins]):
  • page/Frame.cpp: (WebCore::Frame::containsPlugins):
  • page/Frame.h: Add containsPlugins function which returns whether a frame contains plugins or not.

WebKit:

2006-06-06 Anders Carlsson <acarlsson@apple.com>

Reviewed by John.

  • WebView/WebFrame.m: (-[WebFrame _reloadForPluginChanges]): Don't traverse the view hierarchy looking for plugin views. Instead, just ask the frame whether it contains any plugins.

Jun 5, 2006:

10:59 PM Changeset in webkit [14742] by ggaren
  • 2 edits
    1 add in trunk/JavaScriptCore

Reviewed and landed by Geoff.

  • fix a regression in ecma_3/String/regress-104375.js
  • kjs/string_object.cpp: (substituteBackreferences): If a 2-digit back reference is out of range, parse it as a 1-digit reference (followed by the other digit). This matches Firefox's behavior.
8:52 PM Changeset in webkit [14741] by sfalken
  • 1 edit in trunk/WebCore/platform/win/TemporaryLinkStubs.cpp

2006-06-06 Steve Falkenburg <sfalken@apple.com>

Fix build break

  • platform/win/TemporaryLinkStubs.cpp: (GraphicsContext::roundToDevicePixels):
8:13 PM Changeset in webkit [14740] by ddkilzer
  • 3 edits
    8 adds in trunk

LayoutTests:

Reviewed by mjs.

testcases for http://bugzilla.opendarwin.org/show_bug.cgi?id=5564
'font' shorthand parsing should be more tolerant in quirks mode

  • fast/css/font_property_compatibility-expected.checksum: Added.
  • fast/css/font_property_compatibility-expected.png: Added.
  • fast/css/font_property_compatibility-expected.txt: Added.
  • fast/css/font_property_compatibility.html: Added.
  • fast/css/font_property_normal-expected.checksum: Added.
  • fast/css/font_property_normal-expected.png: Added.
  • fast/css/font_property_normal-expected.txt: Added.
  • fast/css/font_property_normal.html: Added.

WebCore:

Reviewed by mjs.

http://bugzilla.opendarwin.org/show_bug.cgi?id=5564
'font' shorthand parsing should be more tolerant in quirks mode

When not in strict mode accept font property specifications
lacking a font family part, like WinIE does.

  • css/cssparser.cpp: (WebCore::CSSParser::parseFont):
7:27 PM Changeset in webkit [14739] by bdakin
  • 10 edits in trunk/WebCore

Reviewed by Darin.

Fix for <rdar://problem/4567520> Pixel cracks in weather widget at
1.83 scaling

To prevent pixel cracks at non-integral scaling factors, before we
call into CG to draw an image, we have to convert the rect to
device space, round the origin and size to integers in device
space, and convert back to user space.


No test cases added since this only affects non-1.0 resolution
scale factors.

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::JSCanvasRenderingContext2D::drawImage): drawImage() now takes FloatRects.
  • html/CanvasPattern.cpp: (WebCore::patternCallback): Call roundToDevicePixels()
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::drawImage): drawImage() now takes FloatRects and call roundToDevicePixels()
  • html/CanvasRenderingContext2D.h: drawImage() now takes FloatRects.
  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::paint): Call roundToDevicePixels()
  • kcanvas/device/quartz/QuartzSupport.mm: (WebCore::debugDumpCGImageToFile): Same as above.
  • platform/GraphicsContext.h:
  • platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::roundToDevicePixels): Takes care of converting between coordinate spaces and rounding. (WebCore::GraphicsContext::drawLineForText):
  • platform/mac/ImageMac.mm: Call roundToDevicePixels() (WebCore::Image::draw): Same as above. (WebCore::drawPattern): Same as above.
6:51 PM Changeset in webkit [14738] by ddkilzer
  • 2 edits in trunk/LayoutTests

LayoutTests:

Reviewed by ggaren.

  • fast/dom/global-constructors-expected.txt: Fixed test results.
5:23 PM Changeset in webkit [14737] by hyatt
  • 1 edit in trunk/WebKit/COM/WebView.cpp

Fix for perf regression with single-processor windows machines on ibench.

3:12 PM Changeset in webkit [14736] by ggaren
  • 3 edits in trunk/JavaScriptCore

Reviewed By Maciej.
Darin already reviewed this change on the branch. See <rdar://problem/4317701>.


  • Fixed <rdar://problem/4291345> PCRE overflow in Safari JavaScriptCore

No test case because there's no behavior change.


  • pcre/pcre_compile.c: (read_repeat_counts): Check for integer overflow / out of bounds
10:15 AM Changeset in webkit [14735] by ggaren
  • 12 edits
    2 adds
    2 deletes in trunk

LayoutTests:

  • Merged test-prototypes.html into global-constructors.html
  • Added prototypes.html, which tests for some missing prototypes in DOM objects


  • fast/dom/global-constructors-expected.txt:
  • fast/dom/global-constructors.html:
  • fast/dom/prototypes-expected.txt: Added.
  • fast/dom/prototypes.html: Added.
  • fast/dom/test-prototypes-expected.txt: Removed.
  • fast/dom/test-prototypes.html: Removed.
  • fast/dom/undetectable-document-all-expected.txt: Updated to reflect change from "HTMLCollection" to "Collection"

WebCore:

Reviewed by Darin.

  • Added the built-in object prototype to DOM objects that were missing it so that primitive operations like == work on them.


  • Removed dead EventConstructor class (it's autogenerated now)


  • Changed HTML collections to describe themselves as "[object Collection]", to match IE.


  • Made DOMCSSRule constructor private because JSCSSRule is the class to use.


  • bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
  • bindings/js/kjs_css.cpp: (KJS::DOMStyleSheet::DOMStyleSheet): (KJS::DOMStyleSheetList::DOMStyleSheetList): (KJS::DOMCSSRule::DOMCSSRule): (KJS::DOMCSSValue::DOMCSSValue): (KJS::toJS): (KJS::DOMRGBColor::DOMRGBColor): (KJS::getDOMRGBColor): (KJS::DOMRect::DOMRect):
  • bindings/js/kjs_css.h:
  • bindings/js/kjs_dom.cpp: (KJS::DOMNodeList::DOMNodeList): (KJS::DOMExceptionConstructor::DOMExceptionConstructor): (KJS::DOMExceptionConstructor::getOwnPropertySlot): (KJS::): (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
  • bindings/js/kjs_dom.h: (KJS::DOMNamedNodesCollection::classInfo):
  • bindings/js/kjs_events.h:
  • bindings/js/kjs_html.cpp: (KJS::):
9:37 AM Changeset in webkit [14734] by ggaren
  • 4 edits in trunk/JavaScriptCore

Reviewed by aliu.

  • Changed CString length from int to size_t. We sould probably do this for UString, too. (Darin, if you're reading this: Maciej said so.)


  • kjs/function.cpp: (KJS::encode):
  • kjs/ustring.cpp: (KJS::CString::CString): (KJS::operator==):
  • kjs/ustring.h: (KJS::CString::size):

Jun 4, 2006:

10:20 PM Changeset in webkit [14733] by darin
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

  • bindings/js/kjs_window.cpp: Added include of <wtf/MathExtras.h>. (WebCore::floatFeature): Remove WIN32 ifdef around isnan. (WebCore::toJS): Add null checks.
9:15 PM Changeset in webkit [14732] by darin
  • 4 edits
    2 adds in trunk

LayoutTests:

  • fast/loader/link-no-URL.html: Added.
  • fast/loader/link-no-URL-expected.txt: Added.

WebCore:

Reviewed by Maciej.

Test: fast/loader/link-no-URL.html

  • loader/Cache.h:
  • loader/Cache.cpp: (WebCore::Cache::updateCacheStatus): Removed the URL parameter. Instead get the URL from the cached object itself. Callers were passing in the wrong URL. When it was a null string, it caused the crash mentioned above. But in other cases it may have caused some other minor problems as well. Added an assert to catch cases where the URL is null (should never happen). (WebCore::Cache::requestImage): Changed call site to not pass URL. (WebCore::Cache::requestStyleSheet): Ditto. (WebCore::Cache::requestScript): Ditto. (WebCore::Cache::requestXSLStyleSheet): Ditto. (WebCore::Cache::requestXBLDocument): Ditto.
8:09 PM Changeset in webkit [14731] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Maciej.


  • kjs/value.h: Removed redundant declarations
4:05 PM Changeset in webkit [14730] by darin
  • 2 edits in trunk/WebCore

Reviewed by Adele.

  • platform/mac/WebCoreTextField.mm: (inputElement): Added. Helper function to get the Objective-C wrapper for an input element associated with a QTextEdit. Returns nil if the element is not an input element. The bug was caused by passing a non-input element to the delegate methods. (-[KWQTextFieldController controlTextDidBeginEditing:]): Use inputElement and don't make the delegate call at all if there is none. This happens only with isindex elements; it's not important to have auto-fill work with those. (-[KWQTextFieldController controlTextDidEndEditing:]): Ditto. (-[KWQTextFieldController controlTextDidChange:]): Ditto. (-[KWQTextFieldController control:textShouldEndEditing:]): Ditto. (-[KWQTextFieldController control:textView:doCommandBySelector:]): Ditto. (-[KWQTextFieldController textView:shouldHandleEvent:]): Ditto.
4:03 PM Changeset in webkit [14729] by darin
  • 36 edits in trunk/WebCore

Reviewed by Anders.

  • fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8995 memory leak in XPath code -- seen in layout tests
  • fixed malloc error on exit due to SVGDOMImplementation destructor
  • attempted to fix the no-XPATH_SUPPORT build by adding an #if
  • changed around includes and header-file formatting in XPath code
  • bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h when generating the bindings for XPathNSResolver.
  • dom/DOMImplementation.h: Added a virtual destructor for the benefit of SVGDOMImplementation.
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::~DOMImplementation): Added.
  • ksvg2/svg/SVGDOMImplementation.h: Reformatted a bit, removed unneeded declarations.
  • ksvg2/svg/SVGDOMImplementation.cpp: (SVGDOMImplementation::~SVGDOMImplementation): Remove commented-out code. (SVGDOMImplementation::createDocument): Remove a reference to KDOMView.
  • xpath/XPathExpression.cpp: (WebCore::XPathExpression::createExpression): Called release to avoid a tiny bit of reference count churn. (WebCore::XPathExpression::evaluate): Set exception code explicitly, because the code relies on it being 0 when the function succeeds.
  • xpath/XPathResult.cpp: (WebCore::InvalidatingEventListener::InvalidatingEventListener): Removed unneeded target node data member. (WebCore::XPathResult::XPathResult): Updated for enum name changes and InvalidatingEventListener name change. Added an assertion.
  • xpath/impl/XPathFunctions.h: Removed the FunctionLibrary class. Changed the parameter for createFunction to be a String instead of char*.
  • xpath/impl/XPathFunctions.cpp: Got rid of local implementation of "round", and used <wtf/MathExtras.h> instead. Also removed unused Interval::asString. Marked all the Interval functions inline. (WebCore::XPath::FunSubstring::doEvaluate): Use lround() instead of (long)round(). (WebCore::XPath::FunLang::doEvaluate): Removed some unneeded temporary String variables. Use equalIgnoringCase() instead of calling lower() on two strings. (WebCore::XPath::createFunctionMap): Changed how this works so that it's all local to this function. Also removed a duplicate entry for the "last" function. (WebCore::XPath::createFunction): Changed from a member function to a separate function. Also changed so that if the args are not used in the function they are deleted. This was one of the sources of the storage leaks.
  • xpath/impl/XPathGrammar.y: Put XPATH_SUPPORT ifdef in. Replaced <num> with values of specific types (numop, eqop). Updated for name change from AxisType to Axis. Changed tokens that were declared as <str> but weren't actually using the string to be declared with no type (PLUS, MINUS, OR, AND, DOTDOT, SLASHSLASH). Replaced use of unregisterString, unregisterPredicateVector, and unregisterExpressionVector to call delete functions instead that both unregister and delete. Change call sites for createFunction to just use the String, removing the deprecatedString().latin1() call that is no longer needed. Added a call to unregisterParseNode that was missing in the "FilterExpr DescendantOrSelf RelativeLocationPath" production.
  • xpath/impl/XPathParser.h: Changed Token to hold a String, Step::Axis, NumericOp::Opcode, and EqTestOp::Opcode. The token ID number tells us which to use. Rearranged to put the private part of the Parser class last. Moved a number of private things inside the cpp file.
  • xpath/impl/XPathParser.cpp: (WebCore::XPath::charCat): Made this a separate function, instead of a static member. (WebCore::XPath::isAxisName): Ditto. Also put the global axis map inside the function, allowing use of a map instead of a map pointer. (WebCore::XPath::isNodeTypeName): Ditto. (WebCore::XPath::Parser::isOperatorContext): Made this const. (WebCore::XPath::Parser::makeTokenAndAdvance): Got rid of the "int" version of this. By using the actual types, we can safely use overload instead. (WebCore::XPath::Parser::lexString): Use substring() instead of deprecatedString().mid(). (WebCore::XPath::Parser::lexNumber): Ditto. (WebCore::XPath::Parser::lexNCName): Changed to return a bool and a String instead of a Token. This avoids the hack of using a token value of "ERROR + 1" which I found quite confusing and is also a bit more explicit. (WebCore::XPath::Parser::lexQName): Ditto. (WebCore::XPath::Parser::nextTokenInternal): Changed to adapt to the changes above and to remove some unneeded else statements. (WebCore::XPath::Parser::lex): Changed the logic that sets up yylval to use the token ID to decide what the type is. This matches what the grammar expects, and removes the need for the token object to track which part of the value is good and the need to reserve 0 to have a special meaning. (WebCore::XPath::Parser::parseStatement): Added code to delete the predicates and the expressions in the predicate and expression vectors. Before, we were only deleting the vectors. This was one of the sources of the storage leaks. (WebCore::XPath::Parser::deletePredicateVector): Renamed, and changed to delete the vector. However this does not delete the predicates in the vector. (WebCore::XPath::Parser::deleteExpressionVector): Renamed, and changed to delete the vector. However this does not delete the expressions in the vector. (WebCore::XPath::Parser::deleteString): Renamed, and changed to delete the string.
  • xpath/impl/XPathPredicate.h:
  • xpath/impl/XPathPredicate.cpp: (WebCore::XPath::NumericOp::NumericOp): Changed opcode from an int to an enum, and renamed to "opcode" instead of "opCode". (WebCore::XPath::NumericOp::doEvaluate): More of the same. (WebCore::XPath::EqTestOp::EqTestOp): Ditto. (WebCore::XPath::EqTestOp::doEvaluate): Ditto. (WebCore::XPath::LogicalOp::LogicalOp): Ditto. (WebCore::XPath::LogicalOp::shortCircuitOn): Ditto. (WebCore::XPath::Predicate::evaluate): Removed an unneeded "new".
  • xpath/impl/XPathStep.h:
  • xpath/impl/XPathStep.cpp: Renamed AxisType to Axis. Removed unused axisAsString function and default constructor.
  • xpath/impl/XPathValue.h: Renamed the type constants to have a Value suffix, instead of the underscore suffix used before on NodeVector and String.
  • xpath/impl/XPathValue.cpp: Updated for name change. Added asserts.
  • xpath/impl/XPathVariableReference.cpp: (WebCore::XPath::VariableReference::doEvaluate): Use a reference instead of a pointer.
  • xpath/XPathEvaluator.cpp:
  • xpath/XPathEvaluator.h:
  • xpath/XPathExpression.h:
  • xpath/XPathNSResolver.cpp:
  • xpath/XPathNSResolver.h:
  • xpath/XPathNamespace.cpp:
  • xpath/XPathNamespace.h:
  • xpath/XPathResult.h:
  • xpath/impl/XPathExpressionNode.cpp:
  • xpath/impl/XPathExpressionNode.h:
  • xpath/impl/XPathPath.cpp:
  • xpath/impl/XPathPath.h:
  • xpath/impl/XPathUtil.cpp:
  • xpath/impl/XPathUtil.h:
  • xpath/impl/XPathVariableReference.h: Reformatted and changed includes around; no substantive changes.
3:51 PM Changeset in webkit [14728] by darin
  • 5 edits in trunk/JavaScriptCore

Reviewed by Anders.

  • changed deleteAllValues so it can work on "const" collections Deleting the values affects the values, not the pointers in the collection, so it's legitimate to do it to a const collection, and a case of that actually came up in the XPath code.
  • wtf/HashMap.h: (WTF::deleteAllPairSeconds): Use const iterators. (WTF::deleteAllValues): Take const HashMap reference as a parameter.
  • wtf/HashSet.h: (WTF::deleteAllValues): Take const HashSet reference as a parameter, and use const iterators.
  • wtf/Vector.h: (WTF::deleteAllValues): Take const Vector reference as a parameter.
  • added more functions that are present in <math.h> on some platforms, but not on others; moved here from various files in WebCore
  • wtf/MathExtras.h: (isinf): Added. (isnan): Added. (lround): Added. (lroundf): Tweaked. (round): Added. (roundf): Tweaked. (signbit): Added.
3:41 PM Changeset in webkit [14727] by ddkilzer
  • 4 edits
    32 adds in trunk

LayoutTests:

Reviewed by hyatt.

  • fast/block/positioning/absolute-in-inline-ltr-2.html: Added.
  • fast/block/positioning/absolute-in-inline-ltr-3.html: Added.
  • fast/block/positioning/absolute-in-inline-ltr.html: Added.
  • fast/block/positioning/absolute-in-inline-rtl-2.html: Added.
  • fast/block/positioning/absolute-in-inline-rtl-3.html: Added.
  • fast/block/positioning/absolute-in-inline-rtl.html: Added.
  • fast/block/positioning/absolute-in-inline-short-ltr.html: Added.
  • fast/block/positioning/absolute-in-inline-short-rtl.html: Added.

WebCore:

Reviewed by hyatt.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteHorizontalValues): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
  • rendering/RenderBox.h:
2:41 PM Changeset in webkit [14726] by brmorris
  • 3 edits in S60/trunk

2006-06-04 Bradley <bradley.morrison@nokia.com>

Reviewed by nobody (oops!)


Webkit.rsg gets processed before webkit.mmp. Fix for nonfatal:


No rule to make target `\EPOC32\INCLUDE\Webkit.rsg'

2:07 PM Changeset in webkit [14725] by brmorris
  • 22 edits
    17 adds in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
WebKit / BrowserCore (part 3 of 3).

2:04 PM Changeset in webkit [14724] by brmorris
  • 19 edits
    15 adds in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
WebKit / Plugin and BrowserView (part 2.8 of 3).

1:58 PM Changeset in webkit [14723] by brmorris
  • 46 edits
    11 adds in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
WebKit / BrowserControl (part 2.6 of 3).

1:54 PM Changeset in webkit [14722] by brmorris
  • 11 edits
    1 add in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
WebKit / BrowserControl (part 2.2 of 3).

1:37 PM Changeset in webkit [14721] by ddkilzer
  • 3 edits in trunk/WebKitSite

WebKitSite:

Reviewed by ggaren.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9303
JavaScript error when loading WebKit blog page

  • blog/wp-content/themes/webkit/sidebar.php: Removed unused JavaScript. Synced with nav.inc.
  • nav.inc: Removed evil tabs--whitespace change only.
1:12 PM Changeset in webkit [14720] by brmorris
  • 77 edits in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
Reindeer UI and WebCore (part 2 of 3).

1:05 PM Changeset in webkit [14719] by brmorris
  • 19 edits
    2 adds in S60/trunk

2006-06-04 Zalan <zalan.bujtas@nokia.com>

Reviewed by Sachin/Bradley


This commit introduces S60 3.1 support to S60WebKit's
JavaScriptCore, MemoryManager and S60Internals (part 1 of 3).

11:52 AM Changeset in webkit [14718] by ddkilzer
  • 4 edits in trunk/WebKitTools

WebKitTools:

Reviewed by darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9299
Teach svn-create-patch and friends to work with binary files

  • Scripts/svn-apply: Updated to use base64-encoded text for binary files when applying patches.
  • Scripts/svn-create-patch: Updated to include binary file content as base64-encoded text in patches.
  • Scripts/svn-unapply: Updated to recognize binary files when unapplying patches.
1:08 AM Changeset in webkit [14717] by andersca
  • 11 edits
    3 adds in trunk

WebCore:

2006-06-04 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9035
document.evaluate and createNSResolver miss on namespaced elements


  • xpath/XPathExpression.cpp: (WebCore::XPathExpression::createExpression): Pass the resolver to the parser.


  • xpath/XPathResult.cpp: (WebCore::XPathResult::iterateNext): Fix off-by-one error.


  • xpath/impl/XPathExpressionNode.h: (WebCore::XPath::EvaluationContext::EvaluationContext): Get rid of the resolver in the evaluation context.


  • xpath/impl/XPathGrammar.y: Fetch the resolver from the parser. Only return the local name.


  • xpath/impl/XPathParser.cpp: (WebCore::XPath::Parser::parseStatement):
  • xpath/impl/XPathParser.h: (WebCore::XPath::Parser::resolver): Update to hold the resolver.


  • xpath/impl/XPathStep.cpp: (WebCore::XPath::Step::Step): If the parser has stored a namespace URI, set it.


(WebCore::XPath::Step::nodeTestMatches):
Check namespace URIs.


  • xpath/impl/XPathStep.h: Add m_namespaceURI.

LayoutTests:

2006-06-04 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=9035
document.evaluate and createNSResolver miss on namespaced elements

  • fast/xpath: Added.
  • fast/xpath/xpath-namespaces-expected.txt: Added.
  • fast/xpath/xpath-namespaces.html: Added.
Note: See TracTimeline for information about the timeline view.