Timeline
Feb 7, 2009:
- 11:03 PM Changeset in webkit [40771] by
-
- 4 edits in trunk/WebCore
2009-02-07 David Hyatt <hyatt@apple.com>
Shrink the size of all InlineTextBoxes and all InlineBoxes (for images and replaced elements) by four bytes.
Change the overflow variable on InlineFlowBoxes into a short and move the bits for InlineFlowBoxes out of the
base InlineBox class. Since the number of bits in the base class was 35, shoving the 3 bits for InlineFlowBoxes
back down into that class (into the 16 bits exposed by making the overflow variable into a short), all text
boxes and image boxes shrink by 4 bytes.
Reviewed by Anders
- rendering/InlineBox.h: (WebCore::InlineBox::InlineBox):
- rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically):
- rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::InlineFlowBox): (WebCore::InlineFlowBox::maxHorizontalVisualOverflow): (WebCore::InlineFlowBox::hasTextChildren):
- 10:17 PM Changeset in webkit [40770] by
-
- 3 edits in trunk/WebCore
2009-02-07 Dean Jackson <dino@apple.com>
Attempted build fix for Qt. Not reviewed.
TransformationMatrix changes in r40761 broke non-Apple builds.
- platform/graphics/qt/TransformationMatrixQt.cpp: (WebCore::TransformationMatrix::operator QMatrix):
- platform/graphics/transforms/TransformationMatrix.h:
- 9:39 PM Changeset in webkit [40769] by
-
- 26 edits in trunk/WebCore
2009-02-07 David Hyatt <hyatt@apple.com>
This patch changes the base class of RenderInline from RenderBox to RenderBoxModelObject. This shift
in base class knocks 32 bytes off the size of every RenderInline. All of the necessary functions
for both RenderInline and RenderBox have either been pulled up into RenderBoxModelObject for sharing
or split into two functions (one in each derived class).
Reviewed by Anders and Antti
- dom/Element.cpp: (WebCore::Element::offsetLeft): (WebCore::Element::offsetTop): (WebCore::Element::offsetWidth): (WebCore::Element::offsetHeight): (WebCore::Element::offsetParent): (WebCore::Element::clientWidth): (WebCore::Element::clientHeight): (WebCore::Element::scrollWidth): (WebCore::Element::scrollHeight):
- dom/Node.cpp: (WebCore::Node::renderBox): (WebCore::Node::renderBoxModelObject):
- dom/Node.h:
- html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isKeyboardFocusable):
- rendering/InlineBox.h: (WebCore::InlineBox::boxModelObject):
- rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::marginLeft): (WebCore::InlineFlowBox::marginRight): (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
- rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::borderLeft): (WebCore::InlineFlowBox::borderRight): (WebCore::InlineFlowBox::paddingLeft): (WebCore::InlineFlowBox::paddingRight):
- rendering/RenderBlock.cpp: (WebCore::getBorderPaddingMargin): (WebCore::RenderBlock::calcInlinePrefWidths):
- rendering/RenderBox.cpp: (WebCore::RenderBox::imageChanged): (WebCore::RenderBox::calcReplacedWidthUsing): (WebCore::RenderBox::calcReplacedHeightUsing): (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteHorizontalValues): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteVerticalValues): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced): (WebCore::RenderBox::positionForCoordinates):
- rendering/RenderBox.h: (WebCore::RenderBox::borderBoundingBox): (WebCore::RenderBox::offsetHeight): (WebCore::RenderBox::marginTop): (WebCore::RenderBox::marginBottom): (WebCore::RenderBox::marginLeft): (WebCore::RenderBox::marginRight):
- rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::offsetLeft): (WebCore::RenderBoxModelObject::offsetTop): (WebCore::RenderBoxModelObject::paddingTop): (WebCore::RenderBoxModelObject::paddingBottom): (WebCore::RenderBoxModelObject::paddingLeft): (WebCore::RenderBoxModelObject::paddingRight): (WebCore::RenderBoxModelObject::paintFillLayerExtended): (WebCore::RenderBoxModelObject::calculateBackgroundSize): (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
- rendering/RenderBoxModelObject.h: (WebCore::RenderBoxModelObject::borderTop): (WebCore::RenderBoxModelObject::borderBottom): (WebCore::RenderBoxModelObject::borderLeft): (WebCore::RenderBoxModelObject::borderRight): (WebCore::RenderBoxModelObject::hasHorizontalBordersPaddingOrMargin): (WebCore::RenderBoxModelObject::hasHorizontalBordersOrPadding): (WebCore::RenderBoxModelObject::childBecameNonInline): (WebCore::RenderBoxModelObject::isBoxModelObject):
- rendering/RenderInline.cpp: (WebCore::RenderInline::RenderInline): (WebCore::RenderInline::destroy): (WebCore::RenderInline::styleDidChange): (WebCore::nextContinuation): (WebCore::RenderInline::continuationBefore): (WebCore::RenderInline::addChildIgnoringContinuation): (WebCore::RenderInline::splitInlines): (WebCore::RenderInline::splitFlow): (WebCore::RenderInline::addChildToContinuation): (WebCore::RenderInline::absoluteRects): (WebCore::RenderInline::offsetLeft): (WebCore::RenderInline::offsetTop): (WebCore::RenderInline::marginLeft): (WebCore::RenderInline::marginRight): (WebCore::RenderInline::positionForCoordinates): (WebCore::RenderInline::clippedOverflowRectForRepaint): (WebCore::RenderInline::rectWithOutlineForRepaint): (WebCore::RenderInline::computeRectForRepaint): (WebCore::RenderInline::updateDragState): (WebCore::RenderInline::childBecameNonInline): (WebCore::RenderInline::updateHitTestResult): (WebCore::RenderInline::imageChanged): (WebCore::RenderInline::addFocusRingRects):
- rendering/RenderInline.h: (WebCore::RenderInline::marginTop): (WebCore::RenderInline::marginBottom): (WebCore::RenderInline::continuation): (WebCore::RenderInline::setContinuation):
- rendering/RenderLineBoxList.cpp: (WebCore::RenderLineBoxList::paint): (WebCore::RenderLineBoxList::hitTest):
- rendering/RenderLineBoxList.h:
- rendering/RenderObject.cpp: (WebCore::addLayers): (WebCore::RenderObject::removeLayers): (WebCore::RenderObject::moveLayers): (WebCore::RenderObject::findNextLayer): (WebCore::RenderObject::enclosingLayer): (WebCore::RenderObject::enclosingCompositingLayer): (WebCore::RenderObject::setLayerNeedsFullRepaint): (WebCore::RenderObject::handleDynamicFloatPositionChange): (WebCore::RenderObject::destroy): (WebCore::RenderObject::offsetParent):
- rendering/RenderObject.h: (WebCore::RenderObject::isInlineContinuation):
- rendering/RenderSVGTSpan.cpp: (WebCore::RenderSVGTSpan::absoluteRects): (WebCore::RenderSVGTSpan::absoluteQuads):
- rendering/RenderSVGTextPath.cpp: (WebCore::RenderSVGTextPath::absoluteRects): (WebCore::RenderSVGTextPath::absoluteQuads):
- rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
- rendering/RenderView.cpp: (WebCore::RenderView::setBestTruncatedAt):
- rendering/RenderView.h:
- rendering/bidi.cpp: (WebCore::getBorderPaddingMargin): (WebCore::inlineWidth): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::inlineFlowRequiresLineBox): (WebCore::requiresLineBox): (WebCore::RenderBlock::findNextLineBreak):
- wml/WMLAElement.cpp: (WebCore::WMLAElement::isKeyboardFocusable):
- 9:20 PM Changeset in webkit [40768] by
-
- 12 edits3 adds in trunk/WebCore
2009-02-07 Yael Aharon <yael.aharon@nokia.com>
Reviewed by Timothy Hatcher <timothy@hatcher.name>
Partial fix for <https://bugs.webkit.org/show_bug.cgi?id=21051>
Include localStorage and sessionStorage in DatabasesPanel.
- WebCore.vcproj/WebCore.vcproj:
- inspector/InspectorController.cpp: (WebCore::InspectorDOMStorageResource::create): (WebCore::InspectorDOMStorageResource::setScriptObject): (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource): (WebCore::InspectorController::populateScriptObjects): (WebCore::InspectorController::addDOMStorageScriptResource): (WebCore::InspectorController::removeDOMStorageScriptResource): (WebCore::InspectorController::resetScriptObjects): (WebCore::InspectorController::didCommitLoad): (WebCore::InspectorController::didUseDOMStorage):
- inspector/InspectorController.h:
- inspector/front-end/DOMStorage.js: Added. (WebInspector.DOMStorage): (WebInspector.DOMStorage.prototype.get domStorage): (WebInspector.DOMStorage.prototype.set domStorage): (WebInspector.DOMStorage.prototype.get domain): (WebInspector.DOMStorage.prototype.set domain): (WebInspector.DOMStorage.prototype.get isLocalStorage): (WebInspector.DOMStorage.prototype.set isLocalStorage):
- inspector/front-end/DOMStorageItemsView.js: Added. (WebInspector.DOMStorageItemsView): (WebInspector.DOMStorageItemsView.prototype.show): (WebInspector.DOMStorageItemsView.prototype.update):
- inspector/front-end/DatabaseQueryView.js: (WebInspector.DatabaseQueryView):
- inspector/front-end/DatabaseTableView.js: (WebInspector.DatabaseTableView): (WebInspector.DatabaseTableView.prototype._queryFinished): (WebInspector.DatabaseTableView.prototype._queryError):
- inspector/front-end/DatabasesPanel.js: (WebInspector.DatabasesPanel): (WebInspector.DatabasesPanel.prototype.reset): (WebInspector.DatabasesPanel.prototype.addDatabase): (WebInspector.DatabasesPanel.prototype.addDOMStorage): (WebInspector.DatabasesPanel.prototype.showDatabase): (WebInspector.DatabasesPanel.prototype.showDOMStorage): (WebInspector.DatabasesPanel.prototype.closeVisibleView): (WebInspector.DatabasesPanel.prototype.updateDatabaseTables): (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage): (WebInspector.DatabasesPanel.prototype._updateSidebarWidth): (WebInspector.DOMStorageSidebarTreeElement): (WebInspector.DOMStorageSidebarTreeElement.prototype.onselect): (WebInspector.DOMStorageSidebarTreeElement.prototype.get mainTitle): (WebInspector.DOMStorageSidebarTreeElement.prototype.set mainTitle): (WebInspector.DOMStorageSidebarTreeElement.prototype.get subtitle): (WebInspector.DOMStorageSidebarTreeElement.prototype.set subtitle):
- inspector/front-end/Images/domStorage.png: Added.
- inspector/front-end/WebKit.qrc:
- inspector/front-end/inspector.css:
- inspector/front-end/inspector.html:
- inspector/front-end/inspector.js: (WebInspector.addDOMStorage):
- page/DOMWindow.cpp: (WebCore::DOMWindow::sessionStorage): (WebCore::DOMWindow::localStorage):
- 6:47 PM Changeset in webkit [40767] by
-
- 3 edits in trunk/WebCore
2009-02-07 Feng Qian <feng@chromium.org>
Reviewed by Eric Seidel <eric@webkit.org>
Put #if ENABLE(PAN_SCROLLING) around EventHandler::setPanScrollCursor.
https://bugs.webkit.org/show_bug.cgi?id=23574
- page/EventHandler.cpp:
- page/EventHandler.h:
- 6:10 PM Changeset in webkit [40766] by
-
- 2 edits in trunk/WebCore
2009-02-07 Zalan Bujtas <zbujtas@gmail.com>
Reviewed by Rob Buis <rwlbuis@gmail.com>
https://bugs.webkit.org/show_bug.cgi?id=23788
call style()->isOriginalDisplayInlineType() on RenderBox instead of RenderObject.
- rendering/bidi.cpp: (WebCore::RenderBlock::skipLeadingWhitespace):
- 2:06 PM Moving to Git edited by
- (diff)
- 1:18 PM Changeset in webkit [40765] by
-
- 2 edits in trunk/WebKit
2009-02-07 Darin Adler <Darin Adler>
- StringsNotToBeLocalized.txt: Updated for recent changes.
- 1:13 PM Changeset in webkit [40764] by
-
- 1 edit in trunk/LayoutTests/ChangeLog
Fix date.
- 1:10 PM Changeset in webkit [40763] by
-
- 5 edits2 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=3248
Bug 3248: Mouse events on OPTION element seem to be ignored
Support mouse events on options in a select when it forms a list box.
Test: fast/forms/option-mouseevents.html
- 12:46 PM Changeset in webkit [40762] by
-
- 2 edits in trunk/WebCore
2009-02-07 Adam Treat <adam.treat@torchmobile.com>
Prospective build fix for all non-Apple platforms.
- platform/graphics/transforms/TransformationMatrix.h:
- 10:40 AM Changeset in webkit [40761] by
-
- 81 edits in trunk
Reviewed by Simon Fraser.
I have not only made TransformationMatrix platform independent
but I've also added 3D methods, which will be used when I update
WebKitCSSMatrix to include 3D (see https://bugs.webkit.org/show_bug.cgi?id=23689).
I am now keeping a full 4x4 matrix in TransformationMatrix. I'm also doing all
the math as doubles rather than floats. This makes a TransformationMatrix
go from 24 bytes to 128 bytes, but I don't think this class is used enough to
make this overhead will be significant.
The change from floats to doubles has caused some differences in rounding and
display (sometimes things that displayed as -0.0 now display as 0.0 or vice versa),
so I've had to change some LayoutTest results in the SVG tests.
- 9:53 AM Changeset in webkit [40760] by
-
- 2 edits in trunk/WebKit/gtk
2009-02-07 Holger Hans Peter Freyther <zecke@selfish.org>
Unreviewed build fix Use toNormalizedRange().
- WebCoreSupport/EditorClientGtk.cpp: (WebKit::clipboard_get_contents_cb):
- 7:33 AM Changeset in webkit [40759] by
-
- 4 edits in trunk/WebCore
2009-02-07 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Tor Arne Vestbø.
For the Qt port implement Image::drawPattern via
BitmapImage::drawPatterns' implementation and implement
Gradient::fill.
This partially fixes rendering of generated gradient content.
Feb 6, 2009:
- 8:19 PM Changeset in webkit [40758] by
-
- 2 edits in branches/Safari-6528/WebKit/mac
Merge r40727.
- 8:19 PM Changeset in webkit [40757] by
-
- 2 edits in branches/Safari-6528/WebKit/win
Merge r40726.
- 8:19 PM Changeset in webkit [40756] by
-
- 2 edits in branches/Safari-6528/WebKit/win
Merge r40713.
- 8:19 PM Changeset in webkit [40755] by
-
- 9 edits in branches/Safari-6528
Merge r40712.
- 8:19 PM Changeset in webkit [40754] by
-
- 7 edits in branches/Safari-6528/WebKit/mac
Merge r40711.
- 8:19 PM Changeset in webkit [40753] by
-
- 2 edits in branches/Safari-6528/WebKit/mac
Merge r40680.
- 8:19 PM Changeset in webkit [40752] by
-
- 6 edits in branches/Safari-6528/WebCore
Merge r40629.
- 8:19 PM Changeset in webkit [40751] by
-
- 2 edits in branches/Safari-6528/WebCore
Merge r40623.
- 8:19 PM Changeset in webkit [40750] by
-
- 2 edits in branches/Safari-6528/WebCore
Merge r40537.
- 8:18 PM Changeset in webkit [40749] by
-
- 3 edits in branches/Safari-6528/WebCore
Merge r40606.
- 8:18 PM Changeset in webkit [40748] by
-
- 2 edits in branches/Safari-6528/WebCore
Merge r40502.
- 6:44 PM Changeset in webkit [40747] by
-
- 5 edits in trunk/WebKit/win
Build fix
Reviewed by Sam Weinig.
- WebCoreSupport/WebFrameLoaderClient.cpp: Added missing #include. (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): Removed incorrect .get(), and changed to use the new overload of WebHistory::itemForURLString.
- WebHistory.cpp: (WebHistory::itemForURLString): Made this const. (WebHistory::itemForURLString): Added an overload that takes a WebCore::String and returns the IWebHistoryItem instead of using an out parameter.
- WebHistory.h: Added public overload of itemForURLString.
- WebView.cpp: (WebView::prepareCandidateWindow): (WebView::onIMERequestCharPosition): (WebView::onIMERequestReconvertString): Updated for toRange -> toNormalizedRange rename.
- 5:28 PM Changeset in webkit [40746] by
-
- 27 edits5 adds in trunk
Reviewed by Justin Garcia.
DOMSelection.getRangeAt() returns a different range than the selection
https://bugs.webkit.org/show_bug.cgi?id=23601
Rename toRange to toNormalizedRange and add new firstRange which returns an unmodified range
Test: fast/dom/Selection/getRangeAt.html
- WebCore.base.exp:
- dom/InputElement.cpp: (WebCore::InputElement::handleBeforeTextInsertedEvent):
- editing/DeleteButtonController.cpp: (WebCore::enclosingDeletableElement):
- editing/Editor.cpp: (WebCore::Editor::selectedRange): (WebCore::Editor::fontForSelection): (WebCore::Editor::applyStyleToSelection): (WebCore::Editor::applyParagraphStyleToSelection): (WebCore::Editor::insertTextWithoutSendingTextEvent): (WebCore::Editor::insertLineBreak): (WebCore::Editor::insertParagraphSeparator): (WebCore::Editor::ignoreSpelling): (WebCore::Editor::isSelectionUngrammatical): (WebCore::Editor::guessesForUngrammaticalSelection): (WebCore::markMisspellingsOrBadGrammar): (WebCore::Editor::rangeForPoint):
- editing/EditorCommand.cpp: (WebCore::expandSelectionToGranularity): (WebCore::executeDeleteToMark): (WebCore::executeSelectToMark):
- editing/RemoveFormatCommand.cpp: (WebCore::RemoveFormatCommand::doApply):
- editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment):
- editing/Selection.cpp: (WebCore::Selection::firstRange): (WebCore::Selection::toNormalizedRange):
- editing/Selection.h:
- editing/SelectionController.h: (WebCore::SelectionController::toNormalizedRange):
- editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): (WebCore::TypingCommand::forwardDeleteKeyPressed):
- editing/markup.cpp: (WebCore::createMarkup):
- loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::createFromSelection):
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
- page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected):
- page/DOMSelection.cpp: (WebCore::DOMSelection::getRangeAt): (WebCore::DOMSelection::addRange): (WebCore::DOMSelection::deleteFromDocument): (WebCore::DOMSelection::containsNode): (WebCore::DOMSelection::toString):
- page/DragController.cpp: (WebCore::setSelectionToDragCaret): (WebCore::DragController::concludeEditDrag): (WebCore::DragController::startDrag):
- page/EventHandler.cpp: (WebCore::EventHandler::dispatchMouseEvent):
- page/Frame.cpp: (WebCore::Frame::selectedText): (WebCore::Frame::shouldChangeSelection): (WebCore::Frame::shouldDeleteSelection): (WebCore::Frame::selectionComputedStyle): (WebCore::Frame::selectionTextRects): (WebCore::Frame::findString): (WebCore::Frame::respondToChangedSelection):
- platform/ContextMenu.cpp: (WebCore::selectionContainsPossibleWord):
- 5:26 PM Changeset in webkit [40745] by
-
- 2 edits in trunk/WebCore
2009-02-06 Brady Eidson <beidson@apple.com>
Reviewed by Dan Bernstein
<rdar://problem/6563402> - Workaround a case where ::didReceiveData() might be called on a ResourceHandleClient
before ::didReceiveResponse().
No layout test, as we don't have a concrete way to reproduce these conditions. To that effect, I've added an ASSERT
to catch the conditions before the workaround takes effect in case any WebKit Debug-build developer runs across
this case and can come up with something more reproducible.
- loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::didReceiveData): If the response is null create a dummy response. This is much like the FrameLoader::init() response that is used for initial document creation.
- 5:16 PM Changeset in webkit [40744] by
-
- 2 edits in trunk/WebCore
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Build fix.
- WebCore.base.exp:
- 5:10 PM Changeset in webkit [40743] by
-
- 9 edits in trunk/WebKit
WebKit/gtk:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Build fix.
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::updateGlobalHistoryRedirectLinks):
- WebCoreSupport/FrameLoaderClientGtk.h:
WebKit/qt:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Build fix.
- WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::updateGlobalHistoryRedirectLinks):
- WebCoreSupport/FrameLoaderClientQt.h:
WebKit/wx:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Build fix.
- WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::updateGlobalHistoryRedirectLinks):
- WebKitSupport/FrameLoaderClientWx.h:
- 5:05 PM Changeset in webkit [40742] by
-
- 2 edits in trunk/WebCore
2009-02-06 Xan Lopez <xan@gnome.org>
Reviewed by Holger Freyther.
Do not use m_scrollOffset to check if we are setting the same
value than we already have.
m_scrollOffset starts at 0 for ScrollView, so when opening a new
page and scrolling to 0 (the usual case) the check will fail and
we won't update the adjustment value, resulting in a possibly
mispositioned scrollbar. Use the adjustment value directly
instead, which is what we are updating anyway.
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::platformHandleHorizontalAdjustment): (WebCore::ScrollView::platformHandleVerticalAdjustment):
- 4:42 PM Changeset in webkit [40741] by
-
- 4 edits4 adds4 deletes in trunk
WebCore:
2009-02-06 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=23800
Header elements are not always preserved during paste
At paste time, don't merge out of header elements. At copy time, be sure to include
headers in the list of special common ancestor blocks, so that copying a paragraph or less
of content inside a header will include the header element in the copied markup.
- editing/ReplaceSelectionCommand.cpp: (WebCore::areSameHeaderElements): (WebCore::ReplaceSelectionCommand::shouldMerge):
- editing/markup.cpp: (WebCore::isSpecialAncestorBlock): (WebCore::createMarkup):
LayoutTests:
2009-02-06 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=23800
Header elements are not always preserved during paste
- editing/execCommand/4128080-1-expected.txt: Added.
- editing/execCommand/4128080-1.html: Added.
- editing/execCommand/4128080-2-expected.txt: Added.
- editing/execCommand/4128080-2.html: Added.
- 4:28 PM Changeset in webkit [40740] by
-
- 17 edits in trunk
WebCore:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Part III of <rdar://problem/6552272>.
Make redirect data available to WebKit. (I tried having WebKit track this
data for itself, but that went wrong -- it's just too hard to figure
out the weird corners of the WebCore loader from within another framework.)
- loader/DocumentLoader.cpp: (WebCore::DocumentLoader::DocumentLoader):
- loader/DocumentLoader.h: Store a flag indicating whether we created a global history entry. If we didn't, then we know that the next redirect should not link to us, since we're not in history.
(WebCore::DocumentLoader::clientRedirectSourceForHistory):
(WebCore::DocumentLoader::clientRedirectDestinationForHistory):
(WebCore::DocumentLoader::setClientRedirectSourceForHistory):
(WebCore::DocumentLoader::serverRedirectSourceForHistory):
(WebCore::DocumentLoader::serverRedirectDestinationForHistory):
(WebCore::DocumentLoader::didCreateGlobalHistoryEntry):
(WebCore::DocumentLoader::setDidCreateGlobalHistoryEntry): Added accessors
to help WebKit wade through the muck of WebCore history.
- loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::updateGlobalHistoryRedirectLinks): Renamed this client function to say what it does, instead of when it's called.
- loader/FrameLoader.cpp: (WebCore::FrameLoader::load): (WebCore::FrameLoader::loadWithNavigationAction): In the case of a redirect, store a link to the previous history URL in the new DocumentLoader, so it can update WebKit with that link when the load commits.
(WebCore::FrameLoader::updateHistory*): Use our new flags and names,
described above.
- loader/FrameLoader.h: (WebCore::FrameLoader::documentLoader): (WebCore::FrameLoader::policyDocumentLoader): (WebCore::FrameLoader::provisionalDocumentLoader): (WebCore::FrameLoader::state): Inlined a few trivial functions because performance mistakes give me the itches.
- loader/FrameLoaderClient.h: Renamed this client function to say what it does, instead of when it's called.
WebKit/mac:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Part III of <rdar://problem/6552272>.
Refactored to use the redirect data WebCore makes available, instead of
tracking loading state in WebKit.
- History/WebHistory.mm: (-[WebHistoryPrivate dealloc]): (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): (-[WebHistory _visitedURLForRedirectWithoutHistoryItem:]):
- History/WebHistoryInternal.h:
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::updateGlobalHistory): (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
WebKit/win:
2009-02-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Part III of <rdar://problem/6552272>.
Refactored to use the redirect data WebCore makes available, instead of
tracking loading state in WebKit.
- WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::updateGlobalHistory): (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
- WebCoreSupport/WebFrameLoaderClient.h:
- WebHistory.cpp: (WebHistory::visitedURL):
- WebHistory.h:
- 4:10 PM Changeset in webkit [40739] by
-
- 2 edits in trunk/WebKit/gtk
2009-02-06 Xan Lopez <xan@gnome.org>
Reviewed by Holger Freyther.
Reported by Daniel Macks.
Use positive numbers for the target info IDs, gtk_target_list_add
casts them to 'guint'. Also just start them from 0, since the
values are not relevant or magic in any way, they are just used as
tokens for the user of the API.
- webkit/webkitwebview.h:
- 4:04 PM Changeset in webkit [40738] by
-
- 7 edits in trunk/WebCore
Reviewed by Justin Garcia.
Minor refactoring and cleanup to Selection code
https://bugs.webkit.org/show_bug.cgi?id=23774
No functional changes, thus no tests.
- editing/Editor.cpp: (WebCore::Editor::applyStyle): (WebCore::Editor::applyParagraphStyle):
- editing/Selection.cpp: (WebCore::Selection::Selection): (WebCore::Selection::setBaseAndExtentToDeepEquivalents): (WebCore::Selection::setStartAndEndFromBaseAndExtentRespectingGranularity): (WebCore::Selection::updateSelectionType): (WebCore::Selection::validate): (WebCore::Selection::setWithoutValidation): (WebCore::Selection::adjustSelectionToAvoidCrossingEditingBoundaries):
- editing/Selection.h: (WebCore::Selection::): (WebCore::Selection::selectionType): (WebCore::Selection::extent): (WebCore::Selection::isNone): (WebCore::Selection::isCaret): (WebCore::Selection::isRange): (WebCore::Selection::isCaretOrRange):
- editing/SelectionController.h: (WebCore::SelectionController::selectionType):
- editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): (WebCore::TypingCommand::forwardDeleteKeyPressed):
- page/Frame.cpp: (WebCore::Frame::revealSelection):
- 3:39 PM Changeset in webkit [40737] by
-
- 1 edit3 adds in trunk/WebCore
2009-02-06 Dimitri Glazkov <Dimitri Glazkov>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=23801
Add custom V8 bindings for SVG.
- bindings/v8/custom/V8SVGElementInstanceCustom.cpp: Added. (WebCore::CALLBACK_FUNC_DECL):
- bindings/v8/custom/V8SVGLengthCustom.cpp: Added. (WebCore::ACCESSOR_GETTER): (WebCore::CALLBACK_FUNC_DECL):
- bindings/v8/custom/V8SVGMatrixCustom.cpp: Added. (WebCore::CALLBACK_FUNC_DECL):
- 3:29 PM Changeset in webkit [40736] by
-
- 2 edits in trunk/WebCore
2009-02-06 David Levin <levin@chromium.org>
Reviewed by Eric Seidel.
Bug 23792: unused param is used in RenderLayer.cp but not #include'd
<https://bugs.webkit.org/show_bug.cgi?id=23792>
Add include file for UnusedParam which is used in this file.
- rendering/RenderLayer.cpp:
- 3:25 PM Changeset in webkit [40735] by
-
- 4 edits in trunk/WebCore
2009-02-06 David Levin <levin@chromium.org>
Reviewed by Eric Seidel.
Bug 23798: KURLGoogle needs support for protocolInHTTPFamily
<https://bugs.webkit.org/show_bug.cgi?id=23798>
Add protocolInHTTPFamily() to the KURLGoogle implementation.
This is another chromium build fix to mirror r40553.
While in this file, I did some style fixes and consistency fixes:
+ fixed many_occurences_of_underscoring_naming
+ usages of NULL
+ comparisons to 0
+ changed the copyright remove an extraneous , and capitalize the (C)
which was suggested for other files that I've submitted.
No observable change in behavior, so no test.
- platform/KURL.h: (WebCore::KURL::protocolInHTTPFamily):
- platform/KURLGoogle.cpp: (WebCore::KURLCharsetConverter::ConvertFromUTF16): (WebCore::lowerCaseEqualsASCII): (WebCore::KURLGooglePrivate::KURLGooglePrivate): (WebCore::KURLGooglePrivate::setUtf8): (WebCore::KURLGooglePrivate::setAscii): (WebCore::KURLGooglePrivate::init): (WebCore::KURLGooglePrivate::initProtocolInHTTPFamily): (WebCore::KURLGooglePrivate::copyTo): (WebCore::KURLGooglePrivate::replaceComponents): (WebCore::KURL::KURL): (WebCore::KURL::createCFURL): (WebCore::KURL::isEmpty): (WebCore::KURL::protocolInHTTPFamily): (WebCore::KURL::query): (WebCore::decodeURLEscapeSequences): (WebCore::KURL::protocolIs): (WebCore::encodeWithURLEscapeSequences): (WebCore::KURL::invalidate): (WebCore::equalIgnoringRef):
- platform/KURLGooglePrivate.h:
- 2:48 PM Changeset in webkit [40734] by
-
- 5 edits in trunk/WebCore
Bug 23741: StyleRareNonInheritedData::operator==() should not compare ContentData objects by pointer
Reviewed by Darin Adler.
- rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::contentDataEquivalent): Moved method to WebCore::StyleRareNonInheritedData class.
- rendering/style/RenderStyle.h: (WebCore::InheritedFlags::contentDataEquivalent): Replaced declaration with inline method that calls contentDataEquivalent() on WebCore::StyleRareNonInheritedData instead.
- rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::operator==): This is the bug fix! Replaced pointer comparison of ContentData objects with call to StyleRareNonInheritedData::contentDataEquivalent(). (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Added.
- rendering/style/StyleRareNonInheritedData.h: (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Added declaration.
- 2:42 PM Changeset in webkit [40733] by
-
- 6 edits in trunk/WebKit/mac
2009-02-06 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/6562220>
CrashTracer: [USER] 21 crashes in Safari at com.apple.WebKit • WebKit::NetscapePluginHostProxy::port
Make the handling of crashes in the plug-in host more robust.
- Plugins/Hosted/NetscapePluginHostProxy.h: Add m_portSet.
- Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Initialize m_portSet.
(WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy):
Free m_portSet.
(WebKit::NetscapePluginHostProxy::processRequests):
Listen for messages on the port set. If we get a message to the port death notification port,
then call pluginHostDied. Otherwise, process the message.
- Plugins/Hosted/NetscapePluginInstanceProxy.h:
- Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::cleanup): Factor code that should be shared between destroy() and pluginHostDied() into cleanup.
(WebKit::NetscapePluginInstanceProxy::destroy):
Call cleanup().
(WebKit::NetscapePluginInstanceProxy::pluginHostDied):
Call cleanup().
(WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply):
Call NetscapePluginHostProxy::processRequests.
- Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyInstance::invalidate): Add a null check for the host proxy.
- 2:17 PM Changeset in webkit [40732] by
-
- 3 edits in trunk/WebCore
2009-02-06 Simon Fraser <Simon Fraser>
Reviewed by Eric Seidel
Factor code that checks whether the object is rooted in
repaint() and repaintRectangle() into a common isRooted()
method.
- rendering/RenderObject.cpp: (WebCore::RenderObject::repaint): (WebCore::RenderObject::repaintRectangle): (WebCore::RenderObject::isRooted):
- rendering/RenderObject.h:
- 2:16 PM Changeset in webkit [40731] by
-
- 4 edits in trunk/WebCore
2009-02-06 Simon Fraser <Simon Fraser>
Reviewed by Eric Seidel
Expose an isRootLayer() method on RenderLayer that works whether the
layer is rooted or not, and use that in a few places in the
accelerated compositing code.
- rendering/RenderLayer.h: (WebCore::RenderLayer::isRootLayer):
- rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::paintingGoesToWindow):
- rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): (WebCore::RenderLayerCompositor::requiresCompositingLayer):
- 2:13 PM Changeset in webkit [40730] by
-
- 3 edits in trunk/WebCore
2009-02-06 Simon Fraser <Simon Fraser>
Reviewed by Eric Seidel
Make RenderStyle::transitionForProperty() const.
- rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::transitionForProperty):
- rendering/style/RenderStyle.h:
- 1:44 PM Changeset in webkit [40729] by
-
- 7 edits in trunk/WebCore
Reviewed by Darin Adler.
- fix <rdar://problem/6552338> FontCache::releaseFontData() called on a small caps font that is not in the cache
Most platforms do not retrieve the small caps font from the FontCache,
but cross-platform code in ~SimpleFontData() assumes the the small caps
font data did come from the cache and therefore calls releaseFontData()
on it.
- platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::~SimpleFontData): Reordered to call platformDestroy() before releasing the small caps font and pruning the glyph page tree. This allows platformDestroy() to reset m_smallCapsFontData to 0 if it was not obtained from the cache.
- platform/graphics/chromium/SimpleFontDataLinux.cpp: (WebCore::SimpleFontData::platformDestroy): Set m_smallCapsFontData to 0 after deleting it.
- platform/graphics/gtk/SimpleFontDataGtk.cpp: (WebCore::SimpleFontData::platformDestroy): Ditto.
- platform/graphics/gtk/SimpleFontDataPango.cpp: (WebCore::SimpleFontData::platformDestroy): Ditto.
- platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::platformCommonDestroy): Ditto.
- platform/graphics/wx/SimpleFontDataWx.cpp: (WebCore::SimpleFontData::platformDestroy): Ditto.
- 1:30 PM Changeset in webkit [40728] by
-
- 2 edits in trunk/WebCore
2009-02-06 Simon Fraser <Simon Fraser>
Fix build when ACCELERATED_COMPOSITING is turned on.
Remove font smoothing changes that will be committed
separately.
- platform/graphics/mac/WebLayer.mm: (WebCore::if):
- 1:09 PM Changeset in webkit [40727] by
-
- 2 edits in trunk/WebKit/mac
- try to fix the Tiger build
- Misc/WebNSArrayExtras.h:
- 12:49 PM Changeset in webkit [40726] by
-
- 2 edits in trunk/WebKit/win
Reviewed by Anders Carlsson.
- fix an assertion failure in Vector::at() beneath WebHistoryItem::dictionaryRepresentation.
- WebHistoryItem.cpp: (WebHistoryItem::dictionaryRepresentation): Give the numbers vector initial size. Also reduced the inline capacity of the vector used for weekly visit counts to 5, which is the expected maximum size.
- 12:33 PM Changeset in webkit [40725] by
-
- 2 edits in trunk/WebCore
2009-02-06 Anders Carlsson <andersca@apple.com>
Build fix.
- bridge/npapi.h:
- 12:16 PM Changeset in webkit [40724] by
-
- 2 edits in trunk/WebCore
2009-02-06 Darin Fisher <darin@chromium.org>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=23790
Custom -> JSCCustom in SVGPointList.idl
- svg/SVGPointList.idl:
- 11:22 AM Changeset in webkit [40723] by
-
- 2 edits in trunk/WebKit/mac
2009-02-06 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/6563650>
Add Netscape plug-in API to tell the browser not to load streams (some plug-ins handle network loading manually)
- Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView loadStream]): (-[WebNetscapePluginView pluginView:receivedData:]): (-[WebNetscapePluginView _shouldCancelSrcStream]):
- 10:08 AM Changeset in webkit [40722] by
-
- 5 edits in trunk/WebCore
2009-02-06 Anantanarayanan Iyengar <ananta@chromium.org>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=23309
Fix whitespace indent errors. The rest of the original patch has already
landed.
- platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::clear):
- platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::clear):
- platform/graphics/qt/ImageSourceQt.cpp: (WebCore::ImageSource::clear):
- platform/graphics/wx/ImageSourceWx.cpp: (WebCore::ImageSource::clear):
- 9:37 AM Changeset in webkit [40721] by
-
- 2 edits in trunk/WebCore
2009-02-06 Dirk Schulze <krit@webkit.org>
Reviewed by Simon Hausmann.
Fix bug in clearRect(). Use fillRect() instead of eraseRect() to get
the context transparent.
[QT] clearRect fill's a given rect with white
https://bugs.webkit.org/show_bug.cgi?id=23728
- platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clearRect):
- 9:32 AM Changeset in webkit [40720] by
-
- 2 edits in trunk/WebKit/win
Build fix. Re-enable missing file in Release_Cairo target.
- 9:05 AM Changeset in webkit [40719] by
-
- 2 edits in trunk/WebCore
2009-02-06 Simon Fraser <Simon Fraser>
Reviewed by Dave Hyatt
When the document is attached and detached, and when it becomes active/inactive
(e.g. coming out or going into the page cache) we need to call
RenderView::didMoveOnscreen()/willMoveOffscreen() to hook and unhook the composited
layers.
Also, if Document::recalcStyle() does not do a layout, it needs to
update the compositing layers.
- dom/Document.cpp: (WebCore::Document::updateRendering): (WebCore::Document::updateLayout): (WebCore::Document::attach): (WebCore::Document::detach): (WebCore::Document::documentWillBecomeInactive): (WebCore::Document::documentDidBecomeActive):
- 5:50 AM Changeset in webkit [40718] by
-
- 2 edits in trunk/WebKit/qt
2009-02-06 Kavindra Palaraja <kavindra.palaraja@nokia.com>
Reviewed by Simon Hausmann.
Doc - made 2 functions internal as they are not part of the API anymore (and this fixes 2 qdoc warnings)
- 4:35 AM Changeset in webkit [40717] by
-
- 10 edits in trunk
WebCore:
2009-02-06 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Tor Arne Vestbø.
Added support for different ownership models for wrapped QObjects in
the JavaScript environment.
WebKit/qt:
2009-02-06 Simon Hausmann <simon.hausmann@nokia.com>
Reviewed by Tor Arne Vestbø.
Added an overload of QWebFrame::addToJavaScriptWindowObject that takes a QScriptEngine::ValueOwnership parameter.
- 2:10 AM Changeset in webkit [40716] by
-
- 2 edits in trunk/WebKit/gtk
2009-02-06 Xan Lopez <xan@gnome.org>
Reviewed by Alexey Proskuryakov.
Do not use empty ResourceError errors.
Rather create bogus but non-null errors, since some codepaths
expect these. For example, see DocumentLoader::mainReceivedError.
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::cancelledError): (WebKit::FrameLoaderClient::blockedError): (WebKit::FrameLoaderClient::cannotShowURLError): (WebKit::FrameLoaderClient::interruptForPolicyChangeError): (WebKit::FrameLoaderClient::cannotShowMIMETypeError): (WebKit::FrameLoaderClient::fileDoesNotExistError): (WebKit::FrameLoaderClient::pluginWillHandleLoadError):
- 1:21 AM Changeset in webkit [40715] by
-
- 3 edits in trunk/WebKit/gtk
2009-02-06 Xan Lopez <xan@gnome.org>
Reviewed by Alexey Proskuryakov.
Use two-arg KURL ctor.
We are using the one-arg ctor currently, but:
- It assumes the strings are already encoded, which is not necesarily the case for us.
- The single-argument KURL ctors expect their input to already be the output of a previous KURL::parse call, so for the general case (ie, random user input) we need to use the two-arg ctor anyway.
- webkit/webkitwebframe.cpp:
- webkit/webkitwebview.cpp:
- 12:56 AM Changeset in webkit [40714] by
-
- 2 edits in trunk/WebKit/qt
2009-02-06 Aaron Boodman <aa@chromium.org>
Reviewed by Holger Freyther.
- WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::documentElementAvailable):) Fix compile error in Qt build introduced by the below change (r40694).
- 12:16 AM Changeset in webkit [40713] by
-
- 2 edits in trunk/WebKit/win
2009-02-06 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Dan Bernstein.
fix obvious problem in previous commit ( used instead of &&) - WebHistoryItem.cpp: (WebHistoryItem::initFromDictionaryRepresentation):
- 12:11 AM Changeset in webkit [40712] by
-
- 9 edits in trunk
WebCore:
2009-02-05 Maciej Stachowiak <mjs@apple.com> and Brady Eidson <beidson@apple.com>
Reviewed by Dan Bernstein and Geoff Garen.
- WebCore code to track per-day and per-week visit counts in history
The basic idea is as follows: we track daily visits for up to 13
days, and weekly visits for up to 5 weeks past the end of the
current daily visits. As soon as the number of daily counts goes
over 13, we squish them down into weeks, and then prune the excess weeks.
- history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem): Remove bogus whitespace. (WebCore::timeToDay): Helper function: convert time to days from the epoch. (WebCore::HistoryItem::padDailyCountsForNewVisit): Insert 0 counts if a site is visited after a span of days. (WebCore::HistoryItem::collapseDailyVisitsToWeekly): Core day/week upgrade algorithm as described above. (WebCore::HistoryItem::recordVisitAtTime): Use above helpers to record all info about a visit to this history item. (WebCore::HistoryItem::setLastVisitedTime): Updated. (WebCore::HistoryItem::visited): Updated. (WebCore::HistoryItem::recordInitialVisit): New function to handle recording data about the very first visit, replacing the prior practice of explicitly setting visit count to 1. (WebCore::HistoryItem::adoptVisitCounts): Take ownership of daily and weekly visit count vectors. (WebCore::HistoryItem::mergeAutoCompleteHints): Added a comment noting that this function doesn't work properly now (though this shouldn't matter much in practice.)
- history/HistoryItem.h: (WebCore::HistoryItem::dailyVisitCounts): Accessor for daily counts. (WebCore::HistoryItem::weeklyVisitCounts): Ditto for weekly counts.
- WebCore.base.exp: Add new symbols and sort.
WebKit/win:
2009-02-05 Maciej Stachowiak <mjs@apple.com> and Brady Eidson <beidson@apple.com>
Reviewed by Dan Bernstein and Geoff Garen..
- WebKit code to track per-day and per-week visit counts in history
For now this data is only exposed via SPI for performance reasons.
- Interfaces/IWebHistoryItemPrivate.idl: Added new interface.
- WebHistory.cpp: (WebHistory::visitedURL): Use new recordInitialVisit method.
- WebHistoryItem.cpp: (WebHistoryItem::initFromDictionaryRepresentation): Add parsing support for new data. (WebHistoryItem::dictionaryRepresentation): Add saving support for new data. (WebHistoryItem::getDailyVisitCounts): SPI accessor. (WebHistoryItem::getWeeklyVisitCounts): SPI accessor. (WebHistoryItem::recordInitialVisit): Tell WebCore to record an initial visit.
- WebHistoryItem.h:
- 12:04 AM Changeset in webkit [40711] by
-
- 7 edits in trunk/WebKit/mac
2009-02-05 Maciej Stachowiak <mjs@apple.com> and Brady Eidson <beidson@apple.com>
Reviewed by Dan Bernstein and Geoff Garen.
- WebKit code to track per-day and per-week visit counts in history
For now this data is only exposed via SPI for performance reasons.
- History/WebHistoryItem.mm: (-[WebHistoryItem initFromDictionaryRepresentation:]): Add parsing support for new data. (-[WebHistoryItem _recordInitialVisit]): Tell WebCore to record an initial visit. (-[WebHistoryItem dictionaryRepresentation]): Add saving support for new data. (-[WebHistoryItem _getDailyVisitCounts:]): SPI accessor. (-[WebHistoryItem _getWeeklyVisitCounts:]): SPI accessor.
- History/WebHistoryItemInternal.h: Declare new methods.
- History/WebHistoryItemPrivate.h: Ditto.
- History/WebHistory.mm: (-[WebHistoryPrivate visitedURL:withTitle:]): For the initial visit, use the new _recordInitialVisit method instead of setting visit count to 1.
- Misc/WebNSArrayExtras.h:
- Misc/WebNSArrayExtras.m: (-[NSArray _webkit_numberAtIndex:]): Helper to retrieve an NSNumber or nil from an NSArray (-[NSArray _webkit_stringAtIndex:]): Helper to retrieve an NSString of nil from an NSArray