Timeline


and

02/09/09:

21:41 Changeset [40808] by mitz@apple.com

Reviewed by Dave Hyatt.

  • fix <rdar://problem/6568942> REGRESSION: Font rendering in Wikipedia input field is incorrect (default GDI text mode)
  • platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::widthForGDIGlyph): Make sure that the DC is in the advanced graphics mode before calling GetCharWidthI(), because otherwise that function returns incorrect results for the default UI font at a certain size.
21:22 Changeset [40807] by simon.fraser@apple.com

2009-02-09 Chris Marrin <cmarrin@apple.com>

Reviewed by Simon Fraser

https://bugs.webkit.org/show_bug.cgi?id=23689

Added 3D functions to WebKitCSSMatrix. This depends on the 3D functions
added to TransformationMatrix in https://bugs.webkit.org/show_bug.cgi?id=6868

Test: transforms/3d/cssmatrix-3d-interface.xhtml

21:20 Changeset [40806] by mrowe@apple.com

Fix <https://bugs.webkit.org/show_bug.cgi?id=23863> / <rdar://problem/6571390>.
Bug 23863: Reproducible crash in Mail with TOT WebKit when creating a new message

Reviewed by Dan Bernstein.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _removeMouseMovedObserverUnconditionally]): Nil-check _private as it may have not
yet been initialized if this WebHTMLView was loaded from a nib.
(-[WebHTMLView _removeSuperviewObservers]): Ditto.

19:13 Changeset [40805] by hyatt@apple.com

Land updated layout tests after recent changes.

19:13 Changeset [40804] by mrowe@apple.com

Fix <https://bugs.webkit.org/show_bug.cgi?id=23858>
Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler

Reviewed by Darin Adler.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't store the renderer in a local variable
as it can be invalidated by any of the calls to focus() within the function. Instead, retrieve it and
null-check it when it is needed.

Test for <https://bugs.webkit.org/show_bug.cgi?id=23858>
Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler

Reviewed by Sam Weinig.

  • fast/dom/HTMLSelectElement/remove-element-from-within-focus-handler-crash-expected.txt: Added.
  • fast/dom/HTMLSelectElement/remove-element-from-within-focus-handler-crash.html: Added.
19:00 Changeset [40803] by hyatt@apple.com

Land updated svg layout tests after recent changes.

18:47 Changeset [40802] by hyatt@apple.com

2009-02-09 David Hyatt <hyatt@apple.com>

Remove the m_height member from InlineBox. This shaves 4 bytes off of all inline boxes. Unfortunately SVG
sets heights that are independent of the renderer or of the font, and so all SVG boxes have to retain m_height
member variables.

height() on InlineBox is now a virtual function that does a dynamic computation (including shrinking boxes
with no text children). For SVG boxes there is also a non-virtual setHeight function for updating the
m_height member variable like before.


Reviewed by Darin Adler

  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint):
  • rendering/EllipsisBox.h: (WebCore::EllipsisBox::EllipsisBox):
  • rendering/InlineBox.cpp: (WebCore::InlineBox::height): (WebCore::InlineBox::root):
  • rendering/InlineBox.h: (WebCore::InlineBox::InlineBox): (WebCore::InlineBox::isInlineFlowBox): (WebCore::InlineBox::isRootInlineBox): (WebCore::InlineBox::topOverflow): (WebCore::InlineBox::bottomOverflow): (WebCore::InlineBox::leftOverflow): (WebCore::InlineBox::rightOverflow):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::height): (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren): (WebCore::InlineFlowBox::nodeAtPoint):
  • rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::isInlineFlowBox):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::height): (WebCore::InlineTextBox::nodeAtPoint): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintCompositionUnderline):
  • rendering/InlineTextBox.h:
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::height): (WebCore::RootInlineBox::placeEllipsis): (WebCore::RootInlineBox::setVerticalOverflowPositions):
  • rendering/RootInlineBox.h: (WebCore::RootInlineBox::isRootInlineBox): (WebCore::RootInlineBox::topOverflow): (WebCore::RootInlineBox::bottomOverflow): (WebCore::RootInlineBox::leftOverflow): (WebCore::RootInlineBox::rightOverflow): (WebCore::RootInlineBox::selectionBottom): (WebCore::RootInlineBox::Overflow::Overflow): (WebCore::RootInlineBox::setVerticalSelectionPositions):
  • rendering/SVGInlineFlowBox.h: (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): (WebCore::SVGInlineFlowBox::height): (WebCore::SVGInlineFlowBox::setHeight):
  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::SVGInlineTextBox):
  • rendering/SVGInlineTextBox.h: (WebCore::SVGInlineTextBox::height): (WebCore::SVGInlineTextBox::setHeight):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBox::layoutInlineBoxes):
  • rendering/SVGRootInlineBox.h: (WebCore::SVGRootInlineBox::SVGRootInlineBox): (WebCore::SVGRootInlineBox::height): (WebCore::SVGRootInlineBox::setHeight):
17:32 Changeset [40801] by eric@webkit.org

Reviewed by Sam Weinig.

Document our Selection DOM extensions
(in preparation for re-writing Selection to work with ranges)

  • page/DOMSelection.cpp: (WebCore::DOMSelection::type):
  • page/DOMSelection.h:
  • page/DOMSelection.idl:
17:31 Changeset [40800] by barraclough@apple.com

2009-02-09 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Minor bugfix, incorrect check meant that subtraction causing integer overflow
would be missed on x86-64 JIT.

  • jit/JITArithmetic.cpp: (JSC::JIT::compileBinaryArithOp):
17:28 Changeset [40799] by barraclough@apple.com

2009-02-09 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

A more sensible register allocation for x86-64.

When WREC was ported to x86-64 it stuck with the same register allocation as x86.
This requires registers to be reordered on entry into WREC generated code, since
argument passing is different on x86-64 and x86 (regparm(3)). This patch switches
x86-64 to use a native register allocation, that does not require argument registers
to be reordered.

  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateEnter): (JSC::WREC::Generator::generateReturnSuccess): (JSC::WREC::Generator::generateReturnFailure):
  • wrec/WRECGenerator.h:
17:10 Changeset [40798] by eric@webkit.org

Attempt to fix wx build

  • WebCoreSources.bkl: change Selection to VisibleSelection
14:32 Changeset [40797] by darin@chromium.org

2009-02-06 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23809
Return CanvasRenderingContext2D instead of DOMObject in IDL to avoid V8 #ifdefs

  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/Document.idl:
  • html/HTMLCanvasElement.idl:
14:17 Changeset [40796] by eric@webkit.org

Fix the gtk build by adding VisibleSelection and removing Selection.

  • GNUmakefile.am:
14:09 Changeset [40795] by krit@webkit.org

2009-02-09 Dirk Schulze <krit@webkit.org>

Reviewed by Eric Seidel.

Transform the gradient instead of the context for most platforms and
transform the context after CGContextReplacePathWithStrokedPath for CG.

REGRESSION: SVG gradient transformation/BoundingBox can cause ugly stroke thickness
https://bugs.webkit.org/show_bug.cgi?id=23547

  • platform/graphics/Gradient.h: (WebCore::Gradient::setGradientSpaceTransform): (WebCore::Gradient::gradientSpaceTransform):
  • platform/graphics/cairo/GradientCairo.cpp: (WebCore::Gradient::platformGradient):
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect):
  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect):
  • platform/graphics/skia/GradientSkia.cpp: (WebCore::Gradient::platformGradient):
  • svg/graphics/SVGPaintServerGradient.cpp: (WebCore::SVGPaintServerGradient::SVGPaintServerGradient): (WebCore::clipToTextMask): (WebCore::SVGPaintServerGradient::setup): (WebCore::SVGPaintServerGradient::teardown):
14:05 Changeset [40794] by weinig@apple.com

2009-02-09 Sam Weinig <sam@webkit.org>

Reviewed by David Hyatt.

Fix the highlight when inspecting inline elements.

  • inspector/InspectorController.cpp: (WebCore::drawHighlightForBox): (WebCore::drawHighlightForLineBoxes): (WebCore::InspectorController::drawNodeHighlight):
13:43 Changeset [40793] by eric@webkit.org

First pass at s/Selection/VisibleSelection

13:07 Changeset [40792] by dglazkov@chromium.org

WebCore:

2009-02-09 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23806
Fix a regression crash where an empty src value and a "text/html" type
on an EMBED element did not finish ResourceRequest initialization due to
an early return.

Test: fast/loader/empty-embed-src-attribute.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):

LayoutTests:

2009-02-09 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23806
New test for the crash with an embed element with an empty src and
"text/html" type.

  • fast/loader/empty-embed-src-attribute-expected.txt: Added.
  • fast/loader/empty-embed-src-attribute.html: Added.
12:55 Changeset [40791] by rwlbuis@webkit.org

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23816
Clean up RenderSVGRoot.cpp

Clean up RenderSVGRoot.cpp.

  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::paint): (WebCore::RenderSVGRoot::calcViewport):
12:41 Changeset [40790] by zecke@webkit.org

2009-02-09 Calvin Walton <calvin.walton@gmail.com>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=23823

[Gtk] Fix build with recent autotools

Current versions of automake/libtool don't assume you want C++ enabled
by default any more, so explicitly check for a C++ compiler.

  • configure.ac: Add AC_PROG_CXX macro
11:48 Changeset [40789] by eric.carlson@apple.com

2009-02-09 Eric Carlson <eric.carlson@apple.com>

Reviewed by Antti Koivisto


https://bugs.webkit.org/show_bug.cgi?id=23737
Make it possible to control media element playback without knowing so many
internal implementation details.

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::togglePlayState): New, toggle between playing and paused state. (WebCore::HTMLMediaElement::beginScrubbing): New, pause as necessary for scrubbing mode. (WebCore::HTMLMediaElement::endScrubbing): New, resume playback if paused for scrubbing mode.
  • html/HTMLMediaElement.h:

(WebCore::HTMLMediaElement::hasVideo): New, added so clients don't need to access MediaPlayer directly.

  • html/HTMLVideoElement.h:

(WebCore::HTMLVideoElement::hasVideo): New.

  • rendering/MediaControlElements.cpp: (WebCore::MediaControlPlayButtonElement::defaultEventHandler): Use new media element togglePlayState method. (WebCore::MediaControlTimelineElement::defaultEventHandler): Tell media element when scrubbing begins and ends so it can deal with pausing logic. Don't call setCurrentTime unless the time will change.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControls): Ask media element if it is able to play instead of including internal logic here. (WebCore::RenderMedia::updateControlVisibility): Ditto.
11:37 Changeset [40788] by eric.carlson@apple.com

2009-02-09 Eric Carlson <eric.carlson@apple.com>

Reviewed by Antti Koivisto

Change RenderPart and RenderPartObject constructors to take a Node*
instead of a HTMLFrameOwnerElement* since that is all then need.

  • rendering/RenderPart.cpp: (WebCore::RenderPart::RenderPart): take Node* instead of HTMLFrameOwnerElement*
  • rendering/RenderPart.h:
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::RenderPartObject): take Node* instead of HTMLFrameOwnerElement*
  • rendering/RenderPartObject.h:
11:28 Changeset [40787] by mitz@apple.com
  • fix -Wmissing-prototypes builds
  • editing/ReplaceSelectionCommand.cpp: (WebCore::isHeaderElement): Marked this function static. (WebCore::haveSameTagName): Ditto.
  • editing/markup.cpp: (WebCore::isSpecialAncestorBlock): Ditto.
  • platform/graphics/transforms/TransformationMatrix.cpp: (WebCore::makeMapBetweenRects): Removed unused function.
  • platform/graphics/transforms/TransformationMatrix.h: Removed unused declaration of private member makeMapBetweenRects().
11:21 Changeset [40786] by andersca@apple.com

2009-02-06 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.


Fix crash when plug-in host dies.


  • Plugins/Hosted/HostedNetscapePluginStream.mm: (WebKit::HostedNetscapePluginStream::didFail):
11:03 Changeset [40785] by treat@webkit.org

2009-02-09 Adam Treat <adam.treat@torchmobile.com>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=23850
Code cleanup of HTMLParser class which was using a mix of m_* and bare
class member variable names which helps to obfuscate the code. Also
changed a few of the static helper functions to take a const pointer type
as they should not be modifying the node.

  • html/HTMLParser.cpp: (WebCore::HTMLParser::HTMLParser): (WebCore::HTMLParser::~HTMLParser): (WebCore::HTMLParser::reset): (WebCore::HTMLParser::setCurrent): (WebCore::HTMLParser::parseToken): (WebCore::HTMLParser::parseDoctypeToken): (WebCore::isTableSection): (WebCore::isTablePart): (WebCore::isTableRelated): (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::handleError): (WebCore::HTMLParser::textCreateErrorCheck): (WebCore::HTMLParser::commentCreateErrorCheck): (WebCore::HTMLParser::headCreateErrorCheck): (WebCore::HTMLParser::bodyCreateErrorCheck): (WebCore::HTMLParser::framesetCreateErrorCheck): (WebCore::HTMLParser::formCreateErrorCheck): (WebCore::HTMLParser::isindexCreateErrorCheck): (WebCore::HTMLParser::noscriptCreateErrorCheck): (WebCore::HTMLParser::pCloserStrictCreateErrorCheck): (WebCore::HTMLParser::mapCreateErrorCheck): (WebCore::HTMLParser::getNode): (WebCore::HTMLParser::allowNestedRedundantTag): (WebCore::HTMLParser::processCloseTag): (WebCore::HTMLParser::isInline): (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): (WebCore::HTMLParser::reopenResidualStyleTags): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popBlock): (WebCore::HTMLParser::popOneBlockCommon): (WebCore::HTMLParser::popOneBlock): (WebCore::HTMLParser::moveOneBlockToStack): (WebCore::HTMLParser::checkIfHasPElementInScope): (WebCore::HTMLParser::popInlineBlocks): (WebCore::HTMLParser::freeBlock): (WebCore::HTMLParser::createHead): (WebCore::HTMLParser::handleIsindex): (WebCore::HTMLParser::startBody): (WebCore::HTMLParser::finished): (WebCore::HTMLParser::reportErrorToConsole):
  • html/HTMLParser.h:
10:38 Changeset [40784] by ap@webkit.org

Applying review comment on a second location.

  • rendering/RenderText.cpp: (WebCore::RenderText::nextOffset): Use "ifdef BUILDING_ON_TIGER".
10:35 Changeset [40783] by ap@webkit.org

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23845
editing/deleting/backward-deletion.html fails on Tiger

  • rendering/RenderText.cpp: (WebCore::RenderText::previousOffset): (WebCore::RenderText::nextOffset): Work around a bug in older ICU versions by hardcoding narrow voiced marks.
07:49 Changeset [40782] by aroben@apple.com

Windows build fix

  • WebCore.vcproj/WebCore.vcproj: Fix the XML syntax.
02:13 Changeset [40781] by ap@webkit.org

2009-02-09 Jian Li <jianli@chromium.org>

Reviewed by Alexey Proskuryakov.

Make WorkerMessagingProxy derive from two base proxy classes.
https://bugs.webkit.org/show_bug.cgi?id=23777

  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
  • dom/Worker.cpp: (WebCore::Worker::terminate): (WebCore::Worker::hasPendingActivity):
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::reportException):
  • dom/WorkerMessagingProxy.cpp: (WebCore::WorkerThreadActivityReportTask::performTask): (WebCore::WorkerMessagingProxy::postExceptionToWorkerObject): (WebCore::WorkerMessagingProxy::workerObjectDestroyed): (WebCore::WorkerMessagingProxy::terminateWorkerContext): (WebCore::WorkerMessagingProxy::confirmWorkerThreadMessage): (WebCore::WorkerMessagingProxy::reportPendingActivity): (WebCore::WorkerMessagingProxy::reportPendingActivityInternal): (WebCore::WorkerMessagingProxy::hasPendingActivity):
  • dom/WorkerMessagingProxy.h:
02:00 Changeset [40780] by ap@webkit.org

2009-02-09 Jian Li <jianli@chromium.org>

Reviewed by Alexey Proskuryakov.

Introduce 2 base classes to split WorkerMessagingProxy.
https://bugs.webkit.org/show_bug.cgi?id=23776

  • GNUmakefile.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/WorkerContextProxy.h: Added. (WebCore::WorkerContextProxy::~WorkerContextProxy):
  • dom/WorkerObjectProxy.h: Added. (WebCore::WorkerObjectProxy::~WorkerObjectProxy):
01:32 Changeset [40779] by ap@webkit.org

Land results for a recently added test (https://bugs.webkit.org/show_bug.cgi?id=23601).

  • fast/dom/Selection/getRangeAt-expected.txt: Added.

02/08/09:

23:15 Changeset [40778] by hyatt@apple.com

2009-02-08 David Hyatt <hyatt@apple.com>

Fix for https://bugs.webkit.org/show_bug.cgi?id=23839

Make sure that generated content is properly handled when content is moved from a block run-in
to an inline run-in.

Reviewed by Sam Weinig

Added fast/runin/002.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::handleRunInChild):
22:03 Changeset [40777] by hyatt@apple.com

2009-02-08 David Hyatt <hyatt@apple.com>

Fix for https://bugs.webkit.org/show_bug.cgi?id=23832, crash when inspecting an image using the
Web inspector.

Reviewed by Mark Rowe

  • rendering/RenderObject.cpp: (WebCore::RenderObject::absoluteRectsForRange): (WebCore::RenderObject::absoluteQuadsForRange):
12:44 Changeset [40776] by krit@webkit.org

2009-02-08 Dirk Schulze <krit@webkit.org>

Unreviewed Qt build fix.


TransformationMatrix changes in r40761 broke QT build.

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::getCTM): (WebCore::GraphicsContext::scale):
12:03 Changeset [40775] by krit@webkit.org

2009-02-08 Dirk Schulze <krit@webkit.org>

Reviewed by Holger Freyther.

This is a follow up of the last commit. It cleans up TransformationMatrix.h
and convert to a series of #elif.

  • platform/graphics/transforms/TransformationMatrix.h:
11:49 Changeset [40774] by krit@webkit.org

2009-02-08 Gustavo Noronha Silva <gns@gnome.org>

Reviewed by Simon Fraser.

[CAIRO] build broken by TransformationMatrix rework
https://bugs.webkit.org/show_bug.cgi?id=23831

Fixed cairo build after the TransformationMatrix rework done in
revision 40761.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::getCTM): (WebCore::GraphicsContext::concatCTM):
  • platform/graphics/cairo/TransformationMatrixCairo.cpp: (WebCore::TransformationMatrix::operator cairo_matrix_t):
  • platform/graphics/transforms/TransformationMatrix.h:
01:49 QtWebKitFeatures45 edited by hausmann@webkit.org
(diff)
01:00 Changeset [40773] by mrowe@apple.com

Versioning.

00:59 Changeset [40772] by mrowe@apple.com

New tag.

02/07/09:

23:03 Changeset [40771] by hyatt@apple.com

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):
22:17 Changeset [40770] by dino@apple.com

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:
21:39 Changeset [40769] by hyatt@apple.com

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):
21:20 Changeset [40768] by bfulgham@webkit.org

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):
18:47 Changeset [40767] by bfulgham@webkit.org

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:
18:10 Changeset [40766] by bfulgham@webkit.org

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):
14:06 Moving to Git edited by hausmann@webkit.org
(diff)
13:18 Changeset [40765] by darin@apple.com

2009-02-07 Darin Adler <darin@apple.com>

  • StringsNotToBeLocalized.txt: Updated for recent changes.
13:13 Changeset [40764] by rwlbuis@webkit.org

Fix date.

13:10 Changeset [40763] by rwlbuis@webkit.org

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 Changeset [40762] by treat@webkit.org

2009-02-07 Adam Treat <adam.treat@torchmobile.com>

Prospective build fix for all non-Apple platforms.

  • platform/graphics/transforms/TransformationMatrix.h:
10:40 Changeset [40761] by cmarrin@apple.com

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=6868

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.

09:53 Changeset [40760] by zecke@webkit.org

2009-02-07 Holger Hans Peter Freyther <zecke@selfish.org>

Unreviewed build fix Use toNormalizedRange().

  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::clipboard_get_contents_cb):
07:33 Changeset [40759] by hausmann@webkit.org

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.

02/06/09:

20:19 Changeset [40758] by mrowe@apple.com

Merge r40727.

20:19 Changeset [40757] by mrowe@apple.com

Merge r40726.

20:19 Changeset [40756] by mrowe@apple.com

Merge r40713.

20:19 Changeset [40755] by mrowe@apple.com

Merge r40712.

20:19 Changeset [40754] by mrowe@apple.com

Merge r40711.

20:19 Changeset [40753] by mrowe@apple.com

Merge r40680.

20:19 Changeset [40752] by mrowe@apple.com

Merge r40629.

20:19 Changeset [40751] by mrowe@apple.com

Merge r40623.

20:19 Changeset [40750] by mrowe@apple.com

Merge r40537.

20:18 Changeset [40749] by mrowe@apple.com

Merge r40606.

20:18 Changeset [40748] by mrowe@apple.com

Merge r40502.

18:44 Changeset [40747] by aroben@apple.com

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.
17:28 Changeset [40746] by eric@webkit.org

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):
17:26 Changeset [40745] by beidson@apple.com

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.
17:16 Changeset [40744] by ggaren@apple.com

2009-02-06 Geoffrey Garen <ggaren@apple.com>

Build fix.

  • WebCore.base.exp:
17:10 Changeset [40743] by ggaren@apple.com

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:
17:05 Changeset [40742] by zecke@webkit.org

2009-02-06 Xan Lopez <xan@gnome.org>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=23621

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):
16:42 Changeset [40741] by justin.garcia@apple.com

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.
16:28 Changeset [40740] by ggaren@apple.com

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:
16:10 Changeset [40739] by zecke@webkit.org

2009-02-06 Xan Lopez <xan@gnome.org>

Reviewed by Holger Freyther.

Reported by Daniel Macks.

https://bugs.webkit.org/show_bug.cgi?id=20412

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:
16:04 Changeset [40738] by eric@webkit.org

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):
15:39 Changeset [40737] by dglazkov@chromium.org

2009-02-06 Dimitri Glazkov <dglazkov@chromium.org>

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):
15:29 Changeset [40736] by darin@chromium.org

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:
15:25 Changeset [40735] by eric@webkit.org

2009-02-06 David Levin <levin@chromium.org>

Reviewed by Eric Seidel.

<https://bugs.webkit.org/show_bug.cgi?id=23741>

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:
14:48 Changeset [40734] by ddkilzer@apple.com

Bug 23741: StyleRareNonInheritedData::operator==() should not compare ContentData objects by pointer

<https://bugs.webkit.org/show_bug.cgi?id=23741>

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.
14:42 Changeset [40733] by andersca@apple.com

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.
14:17 Changeset [40732] by simon.fraser@apple.com

2009-02-06 Simon Fraser <simon.fraser@apple.com>

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:
14:16 Changeset [40731] by simon.fraser@apple.com

2009-02-06 Simon Fraser <simon.fraser@apple.com>

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):
14:13 Changeset [40730] by simon.fraser@apple.com

2009-02-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Eric Seidel

Make RenderStyle::transitionForProperty() const.

  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::transitionForProperty):
  • rendering/style/RenderStyle.h:
13:44 Changeset [40729] by mitz@apple.com

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.
13:30 Changeset [40728] by simon.fraser@apple.com

2009-02-06 Simon Fraser <simon.fraser@apple.com>

Fix build when ACCELERATED_COMPOSITING is turned on.

Remove font smoothing changes that will be committed
separately.

  • platform/graphics/mac/WebLayer.mm: (WebCore::if):
13:09 Changeset [40727] by mitz@apple.com
  • try to fix the Tiger build
  • Misc/WebNSArrayExtras.h:
12:49 Changeset [40726] by mitz@apple.com

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 Changeset [40725] by andersca@apple.com

2009-02-06 Anders Carlsson <andersca@apple.com>

Build fix.


  • bridge/npapi.h:
12:16 Changeset [40724] by darin@chromium.org

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 Changeset [40723] by andersca@apple.com

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 Changeset [40722] by dglazkov@chromium.org

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):
09:37 Changeset [40721] by krit@webkit.org

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):
09:32 Changeset [40720] by bfulgham@webkit.org

Build fix. Re-enable missing file in Release_Cairo target.

09:05 Changeset [40719] by simon.fraser@apple.com

2009-02-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23781

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):
05:50 Changeset [40718] by hausmann@webkit.org

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)

04:35 Changeset [40717] by hausmann@webkit.org

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.

02:10 Changeset [40716] by ap@webkit.org

2009-02-06 Xan Lopez <xan@gnome.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=23769

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):
01:21 Changeset [40715] by ap@webkit.org

2009-02-06 Xan Lopez <xan@gnome.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=23761

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:
00:56 Changeset [40714] by zecke@webkit.org

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).
00:16 Changeset [40713] by mjs@apple.com

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):
00:11 Changeset [40712] by mjs@apple.com

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:
00:04 Changeset [40711] by mjs@apple.com

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

02/05/09:

23:53 Changeset [40710] by ap@webkit.org

Reviewed by Darin Adler.

<rdar://problem/6438271> Improve backspace handling of accented characters

Test: platform/mac/editing/deleting/backward-delete.html

This change makes WebKit behave like AppKit on the Mac. Other platforms are not affected,
because the current behavior matches their standards (tested on Windows, assumed elsewhere).

  • dom/Position.cpp: (WebCore::Position::previous): (WebCore::Position::next): (WebCore::Position::uncheckedPreviousOffsetForBackwardDeletion):
  • dom/Position.h: Added a new option for previous(), used to move to a next position for backward deletion. Renamed EUsingComposedCharacters to PositionMoveType.
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): Use previous(BackwardDeletion) to find a proper range to delete. Also, simplified a check surrounding this code a little.
  • editing/htmlediting.cpp: (WebCore::nextVisuallyDistinctCandidate): (WebCore::previousVisuallyDistinctCandidate): Adjusted for renamed enum values.
  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/RenderText.h: Added previousOffsetForBackwardDeletion().
  • rendering/RenderText.cpp: (WebCore::RenderText::previousOffsetForBackwardDeletion): On PLATFORM(MAC), use an algorithm that matches the one AppKit has for backward deletion.
22:06 Changeset [40709] by aroben@apple.com

Fix a crash in RenderWidget::destroy when navigating away from a page with an <iframe>

This was a regression caused by r40679

Reviewed by Dave Hyatt.

Tested by many many tests.

  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy): Only deref the RenderWidget after we finish accessing its members.
21:40 Changeset [40708] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Fix the #include file order, per review comments.

  • DumpRenderTree/mac/PixelDumpSupportMac.mm:
21:37 Changeset [40707] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

https://bugs.webkit.org/show_bug.cgi?id=23362

If the WebHTMLView uses accelerated compositing, we need for force
the on-screen capture path and also force animations to start with -display
since the DRT window has autodisplay disabled.

  • DumpRenderTree/mac/PixelDumpSupportMac.mm: (createBitmapContextFromWebView):
21:09 Changeset [40706] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Anders Carlsson

getAnimatedStyleForRenderer() should not create a new
CompositeAnimation if the object isn't already animating, and
it should just fall back to returning renderer->style().

  • page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
21:03 Changeset [40705] by aroben@apple.com

Build fix

Rubberstamped by Sam Weinig.

  • wtf/TypeTraits.h: Include Platform.h, since this header uses macros defined there.
20:30 Changeset [40704] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Fix build when ACCELERATED_COMPOSITING is turned on.

Give RenderLayerBacking some love after the great
RenderBoxModelObject split.

20:22 Changeset [40703] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Fix build when ACCELERATED_COMPOSITING is turned on.

writeIndent() needs to be static to avoid warnings on some OSes,
and remove unused CAToTransform3D() method.

  • platform/graphics/GraphicsLayer.cpp: (WebCore::writeIndent):
  • platform/graphics/mac/GraphicsLayerCA.mm:
20:18 Changeset [40702] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Anders Carlsson

Add some methods to the TransformOperation classes that are required
by GraphicsLayer when ACCELERATED_COMPOSITING is turned on.

20:12 Changeset [40701] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Minor clenaup: fix brace style in CompositeAnimationPrivate::updateTransitions(),
and correct a usage of UNUSED_PARAM().

  • page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::updateTransitions):
  • page/animation/ImplicitAnimation.cpp: (WebCore::ImplicitAnimation::startAnimation):
20:09 Changeset [40700] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Fix build when ACCELERATED_COMPOSITING is turned on.

animationOfPropertyIsAccelerated() needs to be public because
it is called from AnimationController.

  • page/animation/AnimationBase.h:
20:07 Changeset [40699] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Anders Carlsson

Fix mis-typed enum value which is hidden inside #ifdefs so didn't break
the build.

  • page/FrameView.cpp: (WebCore::FrameView::updateCompositingLayers):
16:26 Changeset [40698] by bfulgham@webkit.org

2009-02-05 Brent Fulgham <bfulgham@webkit.org>
Reviewed by Sam Weinig.
Build fix.

16:17 Changeset [40697] by zimmermann@webkit.org
16:15 Changeset [40696] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Fix missing checked toRenderBlock casts.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::clearFloats):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::availableHeightUsing):
16:11 Changeset [40695] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Patch from Darin Adler.
Reviewed by Sam Weinig.

Fix case where we were casting to RenderView.

No test case possible.

  • editing/mac/SelectionControllerMac.mm: (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
15:59 Changeset [40694] by dglazkov@chromium.org

WebCore:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • dom/XMLTokenizerLibxml2.cpp: (WebCore::XMLTokenizer::startElementNs): Add call to dispatchDocumentElementAvailable()
  • dom/XMLTokenizerQt.cpp: (WebCore::XMLTokenizer::parseStartElement): Ditto.
  • html/HTMLParser.cpp: (WebCore::HTMLParser::insertNode): Ditto.
  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::documentElementAvailable): Stub out documentElementAvailable().
  • loader/FrameLoader.cpp: documentElementAvailable() callback plumbing.
  • loader/FrameLoader.h: Ditto.
  • loader/FrameLoaderClient.h: Add new documentElementAvailable() callback.

WebKit/gtk:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::documentElementAvailable): Stub out documentElementAvailable()
  • WebCoreSupport/FrameLoaderClientGtk.h: Ditto.

WebKit/mac:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • WebCoreSupport/WebFrameLoaderClient.h: Stub out documentElementAvailable().
  • WebCoreSupport/WebFrameLoaderClient.mm: Ditto.

WebKit/qt:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClient::documentElementAvailable): Stub out documentElementAvailable().
  • WebCoreSupport/FrameLoaderClientQt.h: Ditto.

WebKit/win:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • WebFrame.cpp: (WebFrame::documentElementAvailable): Stub out documentElementAvailable()
  • WebFrame.h: Ditto.

WebKit/wx:

2009-02-05 Aaron Boodman <aa@chromium.org>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23708
Adds documentElementAvailable() callback to FrameLoaderClient.

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::documentElementAvailable): Stub out documentElementAvailable().
  • WebKitSupport/FrameLoaderClientWx.h: Ditto.
15:40 Changeset [40693] by dglazkov@chromium.org

2009-02-05 Scott Violet <sky@google.com>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23766
CanvasRenderingContext2D::setShadow needs else for other platforms.

Implements the CMYK variant of CanvasRenderingContext2D::setShadow for
other platforms using the CMYK color constructor.

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setShadow):
15:36 Changeset [40692] by dglazkov@chromium.org

2009-02-05 Scott Violet <sky@google.com>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23687
Wires up Skia'a ImageBuffer::toDataURL to support pngs.
This helps Chromium pass a couple of layout tests.

  • platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::toDataURL):
  • platform/image-encoders: Added.
  • platform/image-encoders/skia: Added.
  • platform/image-encoders/skia/PNGImageEncoder.cpp: Added. (WebCore::): (WebCore::PngEncoderState::EncoderWriteCallback): (WebCore::PngEncoderState::ConvertBGRAtoRGB): (WebCore::PngEncoderState::PngWriteStructDestroyer::PngWriteStructDestroyer): (WebCore::PngEncoderState::PngWriteStructDestroyer::~PngWriteStructDestroyer): (WebCore::PNGImageEncoder::encode):
  • platform/image-encoders/skia/PNGImageEncoder.h: Added.
15:34 Changeset [40691] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Fix missing checked cast.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::containingBlock):
15:31 Changeset [40690] by zimmermann@webkit.org

Not reviewed. Fix WML enabled builds.
FrameLoader::load() got an additional 'lockHistory' parameter, pass 'false'.

15:28 Changeset [40689] by dglazkov@chromium.org

2009-02-05 Scott Violet <sky@google.com>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23625
Additional fix: Skia platform doesn't render text to a canvas or support clipping to an image buffer

Fixes three bugs in PlatformContextSkia:

  • When a new layer was started clipped to an image we used the assignment operator to copy the SkBitmap. If the SkBitmap owns it's pixels, this is not the right thing to do. Instead we need to create a copy of the image.
  • State holds an SkBitmap by value. State's copy constructor does a memcpy. This is confusing and subtle, I've converted to use a member initializer list which I think is clearer and less error prone.
  • When creating a new layer there is no need to copy the clip image.
  • platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::State::State): (PlatformContextSkia::save): (PlatformContextSkia::beginLayerClippedToImage):
15:24 Changeset [40688] by dglazkov@chromium.org

2009-02-05 Scott Violet <sky@google.com>

Reviewed by George Staikos.

https://bugs.webkit.org/show_bug.cgi?id=23462
Changes call from setFillColor to setStrokeColor.

  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor):
15:12 Changeset [40687] by dglazkov@chromium.org

2009-02-05 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23767
Add custom V8 bindings for HTML5 database.

  • bindings/v8/custom/V8CustomSQLStatementCallback.cpp: Added. (WebCore::V8CustomSQLStatementCallback::V8CustomSQLStatementCallback): (WebCore::V8CustomSQLStatementCallback::~V8CustomSQLStatementCallback): (WebCore::V8CustomSQLStatementCallback::handleEvent):
  • bindings/v8/custom/V8CustomSQLStatementCallback.h: Added. (WebCore::V8CustomSQLStatementCallback::create):
  • bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: Added. (WebCore::V8CustomSQLStatementErrorCallback::V8CustomSQLStatementErrorCallback): (WebCore::V8CustomSQLStatementErrorCallback::~V8CustomSQLStatementErrorCallback): (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
  • bindings/v8/custom/V8CustomSQLStatementErrorCallback.h: Added. (WebCore::V8CustomSQLStatementErrorCallback::create):
  • bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: Added. (WebCore::V8CustomSQLTransactionCallback::V8CustomSQLTransactionCallback): (WebCore::V8CustomSQLTransactionCallback::~V8CustomSQLTransactionCallback): (WebCore::V8CustomSQLTransactionCallback::handleEvent):
  • bindings/v8/custom/V8CustomSQLTransactionCallback.h: Added. (WebCore::V8CustomSQLTransactionCallback::create):
  • bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: Added. (WebCore::V8CustomSQLTransactionErrorCallback::V8CustomSQLTransactionErrorCallback): (WebCore::V8CustomSQLTransactionErrorCallback::~V8CustomSQLTransactionErrorCallback): (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent):
  • bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h: Added. (WebCore::V8CustomSQLTransactionErrorCallback::create):
  • bindings/v8/custom/V8CustomVoidCallback.cpp: Added. (WebCore::V8CustomVoidCallback::V8CustomVoidCallback): (WebCore::V8CustomVoidCallback::~V8CustomVoidCallback): (WebCore::V8CustomVoidCallback::handleEvent): (WebCore::invokeCallback):
  • bindings/v8/custom/V8CustomVoidCallback.h: Added. (WebCore::V8CustomVoidCallback::create):
  • bindings/v8/custom/V8DatabaseCustom.cpp: Added. (WebCore::CALLBACK_FUNC_DECL):
  • bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: Added. (WebCore::CALLBACK_FUNC_DECL):
  • bindings/v8/custom/V8SQLTransactionCustom.cpp: Added. (WebCore::CALLBACK_FUNC_DECL):
15:10 Changeset [40686] by hyatt@apple.com

2009-02-05 David Hyatt <hyatt@apple.com>

Fix crash on svg custom stop test. A virtual function didn't get patched properly.

Reviewed by Sam Weinig

  • rendering/RenderObject.cpp: (WebCore::RenderObject::clippedOverflowRectForRepaint):
  • rendering/RenderSVGGradientStop.h: (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
15:08 Changeset [40685] by simon.fraser@apple.com

2009-02-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23765

Add toRenderBoxModelObject() so that we can cast objects that
can have layers.

Fix getComputedStyle to return the current value of style
properties that are undergoing accelerated animations, by
asking the AnimationController if the property has accelerated
animations, and, if so, asking it to generate an appropriate
style.

Tightened up some type safety (CSSPropertyID), and code clarity
(replace bool with enum).

15:03 Changeset [40684] by dglazkov@chromium.org

JavaScriptCore:

2009-02-05 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23747
Add Chromium threading-related files.

  • wtf/MainThread.cpp: Added platform guard to initializeMainThread.
  • wtf/chromium/ChromiumThreading.h: Added.
  • wtf/chromium/MainThreadChromium.cpp: Added. (WTF::initializeMainThread): (WTF::scheduleDispatchFunctionsOnMainThread):

WebCore:

2009-02-05 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23747
Add Chromium threading-related files.

  • platform/chromium/TemporaryLinkStubs.cpp: Removed theading-related stubs.
15:01 Changeset [40683] by weinig@apple.com

Fix whitespace in the ChangeLog

14:45 Changeset [40682] by mitz@apple.com
  • build fix
  • WebView/WebScriptDebugger.mm: (WebScriptDebugger::initGlobalCallFrame):
14:43 Changeset [40681] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Reviewed by Adam Roben.

Add toRenderButton methods for casting RenderObjects to RenderButtons. The methods will assert if the object
is not a RenderButton. Also add a toRenderButton method that takes a RenderButton but returns void and that
is unimplemented. This method will catch anyone trying to do a cast when the object is already a RenderButton.

  • rendering/RenderButton.h: (WebCore::RenderButton::isRenderButton): (WebCore::toRenderButton):
  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject):
  • rendering/RenderObject.h: (WebCore::RenderObject::isRenderButton):
14:37 Changeset [40680] by bdakin@apple.com

2009-02-05 Beth Dakin <bdakin@apple.com>

Reviewed by John Sullivan and Brady Eidson.

Fix for <rdar://problem/6557595> REGRESSION: In Mail, selecting a
mail note message doesn't display it in Mail's preview pane

This was failing because revision 36962 removed a version of
setVerticalScrollingMode that mail calls. This patch simply adds
that method back.

  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView setVerticalScrollingMode:]):
14:26 Changeset [40679] by hyatt@apple.com

2009-02-05 David Hyatt <hyatt@apple.com>

Move the m_layer member variable of RenderBox up into RenderBoxModelObject. Refactor styleDidChange'
of RenderObject, RenderBoxModelObject and RenderBox to get more of the code in the correct subclass.
In order to set the various RenderObject bits properly prior to the test for whether a layer is
required, I added an additional method, updateBoxModelInfoAfterStyleChange, that is responsible
for setting all of the bits.


Eliminate hasStaticX/Y, staticX/Y, and setStaticX/Y from the render tree. Move hasStaticX/Y to
RenderStyle, and just use the corresponding layer() methods for the
staticX/Y getters/setters.

Reviewed by Sam Weinig

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::layoutOnlyPositionedObjects): (WebCore::RenderBlock::layoutPositionedObjects): (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::offsetForContents): (WebCore::RenderBlock::calcPrefWidths): (WebCore::RenderBlock::baselinePosition):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::RenderBox): (WebCore::RenderBox::destroy): (WebCore::RenderBox::styleWillChange): (WebCore::RenderBox::styleDidChange): (WebCore::RenderBox::updateBoxModelInfoFromStyle): (WebCore::RenderBox::scrollWidth): (WebCore::RenderBox::scrollHeight): (WebCore::RenderBox::scrollLeft): (WebCore::RenderBox::scrollTop): (WebCore::RenderBox::setScrollLeft): (WebCore::RenderBox::setScrollTop): (WebCore::RenderBox::getOverflowClipRect): (WebCore::RenderBox::localToAbsolute): (WebCore::RenderBox::absoluteToLocal): (WebCore::RenderBox::localToContainerQuad): (WebCore::RenderBox::position): (WebCore::RenderBox::computeRectForRepaint): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::RenderBoxModelObject): (WebCore::RenderBoxModelObject::destroy): (WebCore::RenderBoxModelObject::styleWillChange): (WebCore::RenderBoxModelObject::styleDidChange): (WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):
  • rendering/RenderBoxModelObject.h: (WebCore::RenderBoxModelObject::layer): (WebCore::RenderBoxModelObject::requiresLayer):
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox):
  • rendering/RenderInline.cpp: (WebCore::RenderInline::updateBoxModelInfoFromStyle): (WebCore::RenderInline::styleDidChange): (WebCore::RenderInline::relativePositionedInlineOffset):
  • rendering/RenderInline.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::setStaticY): (WebCore::RenderLayer::updateLayerPosition):
  • rendering/RenderLayer.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): (WebCore::RenderObject::styleDidChange):
  • rendering/RenderObject.h: (WebCore::RenderObject::markContainingBlocksForLayout):
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::paint):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
  • rendering/bidi.cpp: (WebCore::appendRunsForObject): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::skipTrailingWhitespace): (WebCore::RenderBlock::skipLeadingWhitespace): (WebCore::RenderBlock::findNextLineBreak):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::hasStaticX): (WebCore::InheritedFlags::hasStaticY):
14:07 Changeset [40678] by bfulgham@webkit.org

2009-02-05 David Levin <levin@chromium.org>

Reviewed by Darin Adler.

Bug 23713: COMPILE_ASSERTS should be moved out of TypeTraits.h and into .cpp file
<https://bugs.webkit.org/show_bug.cgi?id=23713>

  • wtf/HashTraits.h: Remove unnecessary header file that I missed when moving out the type traits form this file.
  • wtf/TypeTraits.cpp: Added. (WTF::):
  • wtf/TypeTraits.h: Moved the compile asserts into TypeTraits.cpp file.
13:18 Changeset [40677] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Fix the windows build.

  • bindings/scripts/CodeGeneratorCOM.pm:
  • dom/Node.idl:
12:58 Changeset [40676] by andersca@apple.com

2009-02-05 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.


Update to match Gecko.


  • bridge/npapi.h:
  • plugins/npfunctions.h:
12:35 Changeset [40675] by weinig@apple.com

2009-02-05 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Finish merging EventTargetNode up into Node.

This also fixes a small recently introduced issue where EventListeners
would not be removed from the document if they were attached to comment
nodes outside of the documentElement.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/JSEventTargetNodeCustom.cpp: Removed.
  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::addEventListener): (WebCore::JSNode::removeEventListener): (WebCore::JSNode::pushEventHandlerScope):
  • bindings/scripts/CodeGenerator.pm:
  • dom/CharacterData.cpp: (WebCore::CharacterData::CharacterData): (WebCore::CharacterData::rendererIsNeeded):
  • dom/CharacterData.h:
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::willRemove): (WebCore::ContainerNode::attach): (WebCore::ContainerNode::detach): (WebCore::ContainerNode::insertedIntoDocument): (WebCore::ContainerNode::removedFromDocument): (WebCore::ContainerNode::setFocus): (WebCore::ContainerNode::setActive): (WebCore::ContainerNode::setHovered): (WebCore::dispatchChildInsertionEvents): (WebCore::dispatchChildRemovalEvents):
  • dom/ContainerNode.h: (WebCore::ContainerNode::ContainerNode):
  • dom/Document.cpp: (WebCore::Document::removeAllEventListenersFromAllNodes): (WebCore::Document::removeAllDisconnectedNodeEventListeners): (WebCore::Document::setFocusedNode):
  • dom/EventTargetNode.cpp: Removed.
  • dom/EventTargetNode.h: Removed.
  • dom/Node.cpp: (WebCore::Node::scriptExecutionContext): (WebCore::Node::eventListeners): (WebCore::Node::insertedIntoDocument): (WebCore::Node::removedFromDocument): (WebCore::Node::willMoveToNewOwnerDocument): (WebCore::Node::didMoveToNewOwnerDocument): (WebCore::updateSVGElementInstancesAfterEventListenerChange): (WebCore::Node::addEventListener): (WebCore::Node::removeEventListener): (WebCore::Node::removeAllEventListenersSlowCase): (WebCore::Node::handleLocalEvents): (WebCore::eventTargetAsSVGElementInstance): (WebCore::eventTargetRespectingSVGTargetRules): (WebCore::Node::dispatchEvent): (WebCore::Node::dispatchGenericEvent): (WebCore::Node::dispatchSubtreeModifiedEvent): (WebCore::Node::dispatchWindowEvent): (WebCore::Node::dispatchUIEvent): (WebCore::Node::dispatchKeyEvent): (WebCore::Node::dispatchMouseEvent): (WebCore::Node::dispatchSimulatedMouseEvent): (WebCore::Node::dispatchSimulatedClick): (WebCore::Node::dispatchWheelEvent): (WebCore::Node::dispatchWebKitAnimationEvent): (WebCore::Node::dispatchWebKitTransitionEvent): (WebCore::Node::dispatchFocusEvent): (WebCore::Node::dispatchBlurEvent): (WebCore::Node::dispatchEventForType): (WebCore::Node::dispatchProgressEvent): (WebCore::Node::dispatchStorageEvent): (WebCore::Node::removeInlineEventListenerForType): (WebCore::Node::setInlineEventListenerForType): (WebCore::Node::setInlineEventListenerForTypeAndAttribute): (WebCore::Node::inlineEventListenerForType): (WebCore::Node::disabled): (WebCore::Node::defaultEventHandler): (WebCore::Node::onabort): (WebCore::Node::setOnabort): (WebCore::Node::onblur): (WebCore::Node::setOnblur): (WebCore::Node::onchange): (WebCore::Node::setOnchange): (WebCore::Node::onclick): (WebCore::Node::setOnclick): (WebCore::Node::oncontextmenu): (WebCore::Node::setOncontextmenu): (WebCore::Node::ondblclick): (WebCore::Node::setOndblclick): (WebCore::Node::onerror): (WebCore::Node::setOnerror): (WebCore::Node::onfocus): (WebCore::Node::setOnfocus): (WebCore::Node::oninput): (WebCore::Node::setOninput): (WebCore::Node::onkeydown): (WebCore::Node::setOnkeydown): (WebCore::Node::onkeypress): (WebCore::Node::setOnkeypress): (WebCore::Node::onkeyup): (WebCore::Node::setOnkeyup): (WebCore::Node::onload): (WebCore::Node::setOnload): (WebCore::Node::onmousedown): (WebCore::Node::setOnmousedown): (WebCore::Node::onmousemove): (WebCore::Node::setOnmousemove): (WebCore::Node::onmouseout): (WebCore::Node::setOnmouseout): (WebCore::Node::onmouseover): (WebCore::Node::setOnmouseover): (WebCore::Node::onmouseup): (WebCore::Node::setOnmouseup): (WebCore::Node::onmousewheel): (WebCore::Node::setOnmousewheel): (WebCore::Node::onbeforecut): (WebCore::Node::setOnbeforecut): (WebCore::Node::oncut): (WebCore::Node::setOncut): (WebCore::Node::onbeforecopy): (WebCore::Node::setOnbeforecopy): (WebCore::Node::oncopy): (WebCore::Node::setOncopy): (WebCore::Node::onbeforepaste): (WebCore::Node::setOnbeforepaste): (WebCore::Node::onpaste): (WebCore::Node::setOnpaste): (WebCore::Node::ondragenter): (WebCore::Node::setOndragenter): (WebCore::Node::ondragover): (WebCore::Node::setOndragover): (WebCore::Node::ondragleave): (WebCore::Node::setOndragleave): (WebCore::Node::ondrop): (WebCore::Node::setOndrop): (WebCore::Node::ondragstart): (WebCore::Node::setOndragstart): (WebCore::Node::ondrag): (WebCore::Node::setOndrag): (WebCore::Node::ondragend): (WebCore::Node::setOndragend): (WebCore::Node::onreset): (WebCore::Node::setOnreset): (WebCore::Node::onresize): (WebCore::Node::setOnresize): (WebCore::Node::onscroll): (WebCore::Node::setOnscroll): (WebCore::Node::onsearch): (WebCore::Node::setOnsearch): (WebCore::Node::onselect): (WebCore::Node::setOnselect): (WebCore::Node::onselectstart): (WebCore::Node::setOnselectstart): (WebCore::Node::onsubmit): (WebCore::Node::setOnsubmit): (WebCore::Node::onunload): (WebCore::Node::setOnunload):
  • dom/Node.h:
  • editing/Editor.cpp: (WebCore::Editor::dispatchCPPEvent):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::handleLocalEvents):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::notifyFinished):
  • loader/MediaDocument.cpp: (WebCore::MediaDocument::defaultEventHandler):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::mouseButtonListener):
  • page/EventHandler.cpp: (WebCore::EventHandler::dispatchDragEvent): (WebCore::EventHandler::updateMouseEventTargetNode): (WebCore::EventHandler::dispatchMouseEvent): (WebCore::EventHandler::handleWheelEvent): (WebCore::EventHandler::canMouseDownStartSelect): (WebCore::EventHandler::canMouseDragExtendSelect): (WebCore::eventTargetNodeForDocument): (WebCore::EventHandler::keyEvent):
  • page/FrameView.cpp: (WebCore::FrameView::scheduleEvent): (WebCore::FrameView::updateOverflowStatus):
  • page/FrameView.h:
  • page/Page.cpp: (WebCore::networkStateChanged):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::updateOverflowStatus):
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::valueChanged):
  • rendering/RenderMedia.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::selectionChanged):
  • svg/SVGElementInstance.h: (WebCore::SVGElementInstance::toNode):
  • xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate):
  • xml/XPathResult.cpp: (WebCore::XPathResult::XPathResult):
12:25 Changeset [40674] by treat@webkit.org

2009-02-05 Adam Treat <adam.treat@torchmobile.com>

Fix the Qt build now that EventTargetNode.idl was removed in r40672.

  • WebCore.pro:
12:14 Changeset [40673] by darin@chromium.org

2009-02-05 Scott Violet <sky@google.com>

Reviewed by Sam Weinig.

Bug 23462: Add RGB -> CMYK conversion algorithm
<https://bugs.webkit.org/show_bug.cgi?id=23462>

Adds an RGB -> CMYK converter. This isn't perfect, but better than
nothing.

  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor): (WebCore::CanvasStyle::applyFillColor): (WebCore::CanvasStyle::cmykToRGB):
  • html/CanvasStyle.h:
10:38 Changeset [40672] by weinig@apple.com

WebCore:

2009-02-04 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

First stage of merging EventTargetNode up into Node. The intent of this change
is to both simplify the inheritance hierarchy (at the same time making it more
closely match the spec which states that all Nodes are EventTargets) and save
4 bytes per Node that the polymorphic multiple-inheritance was costing us.

This does the bare minimum to get things compiling, the next patch will clean

  • DerivedSources.make:
  • WebCore.base.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
  • bindings/js/JSEventListener.cpp: (WebCore::JSLazyEventListener::parseCode):
  • bindings/js/JSEventTarget.cpp: (WebCore::toEventTarget):
  • bindings/js/JSEventTarget.h:
  • bindings/js/JSEventTargetNodeCustom.cpp: (WebCore::JSNode::addEventListener): (WebCore::JSNode::removeEventListener): (WebCore::JSNode::pushEventHandlerScope):
  • bindings/js/JSStyleSheetCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorObjC.pm:
  • dom/Attr.idl:
  • dom/CharacterData.h:
  • dom/CharacterData.idl:
  • dom/Document.idl:
  • dom/DocumentFragment.idl:
  • dom/Element.idl:
  • dom/EventTarget.cpp: (WebCore::EventTarget::toNode):
  • dom/EventTarget.h:
  • dom/EventTarget.idl:
  • dom/EventTargetNode.cpp: (WebCore::Node::scriptExecutionContext): (WebCore::Node::eventListeners): (WebCore::Node::insertedIntoDocument): (WebCore::Node::removedFromDocument): (WebCore::Node::willMoveToNewOwnerDocument): (WebCore::Node::didMoveToNewOwnerDocument): (WebCore::Node::addEventListener): (WebCore::Node::removeEventListener): (WebCore::Node::removeAllEventListenersSlowCase): (WebCore::Node::handleLocalEvents): (WebCore::Node::dispatchEvent): (WebCore::Node::dispatchGenericEvent): (WebCore::Node::dispatchSubtreeModifiedEvent): (WebCore::Node::dispatchWindowEvent): (WebCore::Node::dispatchUIEvent): (WebCore::Node::dispatchKeyEvent): (WebCore::Node::dispatchMouseEvent): (WebCore::Node::dispatchSimulatedMouseEvent): (WebCore::Node::dispatchSimulatedClick): (WebCore::Node::dispatchWheelEvent): (WebCore::Node::dispatchWebKitAnimationEvent): (WebCore::Node::dispatchWebKitTransitionEvent): (WebCore::Node::dispatchFocusEvent): (WebCore::Node::dispatchBlurEvent): (WebCore::Node::dispatchEventForType): (WebCore::Node::dispatchProgressEvent): (WebCore::Node::dispatchStorageEvent): (WebCore::Node::removeInlineEventListenerForType): (WebCore::Node::setInlineEventListenerForType): (WebCore::Node::setInlineEventListenerForTypeAndAttribute): (WebCore::Node::inlineEventListenerForType): (WebCore::Node::disabled): (WebCore::Node::defaultEventHandler): (WebCore::Node::onabort): (WebCore::Node::setOnabort): (WebCore::Node::onblur): (WebCore::Node::setOnblur): (WebCore::Node::onchange): (WebCore::Node::setOnchange): (WebCore::Node::onclick): (WebCore::Node::setOnclick): (WebCore::Node::oncontextmenu): (WebCore::Node::setOncontextmenu): (WebCore::Node::ondblclick): (WebCore::Node::setOndblclick): (WebCore::Node::onerror): (WebCore::Node::setOnerror): (WebCore::Node::onfocus): (WebCore::Node::setOnfocus): (WebCore::Node::oninput): (WebCore::Node::setOninput): (WebCore::Node::onkeydown): (WebCore::Node::setOnkeydown): (WebCore::Node::onkeypress): (WebCore::Node::setOnkeypress): (WebCore::Node::onkeyup): (WebCore::Node::setOnkeyup): (WebCore::Node::onload): (WebCore::Node::setOnload): (WebCore::Node::onmousedown): (WebCore::Node::setOnmousedown): (WebCore::Node::onmousemove): (WebCore::Node::setOnmousemove): (WebCore::Node::onmouseout): (WebCore::Node::setOnmouseout): (WebCore::Node::onmouseover): (WebCore::Node::setOnmouseover): (WebCore::Node::onmouseup): (WebCore::Node::setOnmouseup): (WebCore::Node::onmousewheel): (WebCore::Node::setOnmousewheel): (WebCore::Node::onbeforecut): (WebCore::Node::setOnbeforecut): (WebCore::Node::oncut): (WebCore::Node::setOncut): (WebCore::Node::onbeforecopy): (WebCore::Node::setOnbeforecopy): (WebCore::Node::oncopy): (WebCore::Node::setOncopy): (WebCore::Node::onbeforepaste): (WebCore::Node::setOnbeforepaste): (WebCore::Node::onpaste): (WebCore::Node::setOnpaste): (WebCore::Node::ondragenter): (WebCore::Node::setOndragenter): (WebCore::Node::ondragover): (WebCore::Node::setOndragover): (WebCore::Node::ondragleave): (WebCore::Node::setOndragleave): (WebCore::Node::ondrop): (WebCore::Node::setOndrop): (WebCore::Node::ondragstart): (WebCore::Node::setOndragstart): (WebCore::Node::ondrag): (WebCore::Node::setOndrag): (WebCore::Node::ondragend): (WebCore::Node::setOndragend): (WebCore::Node::onreset): (WebCore::Node::setOnreset): (WebCore::Node::onresize): (WebCore::Node::setOnresize): (WebCore::Node::onscroll): (WebCore::Node::setOnscroll): (WebCore::Node::onsearch): (WebCore::Node::setOnsearch): (WebCore::Node::onselect): (WebCore::Node::setOnselect): (WebCore::Node::onselectstart): (WebCore::Node::setOnselectstart): (WebCore::Node::onsubmit): (WebCore::Node::setOnsubmit): (WebCore::Node::onunload): (WebCore::Node::setOnunload):
  • dom/EventTargetNode.h: (WebCore::toEventTargetNode): (WebCore::EventTargetNodeCast):
  • dom/EventTargetNode.idl: Removed.
  • dom/MouseEvent.cpp: (WebCore::MouseEvent::MouseEvent): (WebCore::MouseEvent::initMouseEvent): (WebCore::MouseEvent::toElement): (WebCore::MouseEvent::fromElement):
  • dom/MouseEvent.h: (WebCore::MouseEvent::create): (WebCore::MouseEvent::relatedTarget):
  • dom/Node.cpp: (WebCore::Node::~Node):
  • dom/Node.h: (WebCore::Node::isEventTargetNode): (WebCore::Node::toNode): (WebCore::Node::removeAllEventListeners): (WebCore::Node::refEventTarget): (WebCore::Node::derefEventTarget):
  • dom/Node.idl:
  • page/EventHandler.h:
  • page/FrameView.h:
  • xml/XPathResult.h: (WebCore::XPathResult::create):

LayoutTests:

2009-02-05 Sam Weinig <sam@webkit.org>

Reviewed by Darin Layer.

Fix after merging EventTargetNode up into Node.

  • fast/dom/Window/window-properties-expected.txt:
  • fast/dom/prototype-chain-expected.txt:
09:24 Changeset [40671] by hyatt@apple.com

2009-02-04 David Hyatt <hyatt@apple.com>

Convert RenderLayer from having a RenderBox* m_renderer to having a RenderBoxModelObject*. The
container-relative repaint methods all had to be changed as a result to use RenderBoxModelObject* also.

All of RenderLayer.cpp now uses what will be the new style for dealing with an object that can be a block
or an inline flow. x()/y()/width()/height() can't be queried on an inline flow, nor can many other
properties (like scrollWidth() / scrollHeight()), so the code has to be tightened up to convert to RenderBox
under the right conditions.

There was a bogus subtraction of renderer()->y() in localBounding box for RenderInlines. Since y was always
0, this subtraction wasn't necessary. It has been removed.

Reviewed by Adam Roben

  • page/animation/AnimationBase.cpp:
  • rendering/RenderBR.h: (WebCore::RenderBR::selectionRectForRepaint):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::selectionGapRectsForRepaint): (WebCore::RenderBlock::rectWithOutlineForRepaint):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::selectionRectForRepaint):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::outlineBoundsForRepaint): (WebCore::RenderBox::localToContainerQuad): (WebCore::RenderBox::clippedOverflowRectForRepaint): (WebCore::RenderBox::computeRectForRepaint):
  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::relativePositionOffsetX): (WebCore::RenderBoxModelObject::relativePositionOffsetY):
  • rendering/RenderBoxModelObject.h: (WebCore::RenderBoxModelObject::relativePositionOffset):
  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::computeRectForRepaint):
  • rendering/RenderForeignObject.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::clippedOverflowRectForRepaint): (WebCore::RenderInline::rectWithOutlineForRepaint):
  • rendering/RenderInline.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::updateTransform): (WebCore::RenderLayer::setHasVisibleContent): (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::scrollRectToVisible): (WebCore::resizerCornerRect): (WebCore::RenderLayer::scrollbarCornerPresent): (WebCore::RenderLayer::invalidateScrollbarRect): (WebCore::RenderLayer::positionOverflowControls): (WebCore::RenderLayer::computeScrollDimensions): (WebCore::RenderLayer::updateScrollInfoAfterLayout): (WebCore::RenderLayer::paintScrollCorner): (WebCore::RenderLayer::paintResizer): (WebCore::RenderLayer::isPointInResizeControl): (WebCore::RenderLayer::hitTestOverflowControls): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::localBoundingBox):
  • rendering/RenderLayer.h: (WebCore::RenderLayer::renderer): (WebCore::RenderLayer::renderBox): (WebCore::RenderLayer::renderBoxX): (WebCore::RenderLayer::renderBoxY):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::selectionRectForRepaint):
  • rendering/RenderListMarker.h:
  • rendering/RenderMarquee.cpp: (WebCore::RenderMarquee::computePosition): (WebCore::RenderMarquee::timerFired):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::containerForRepaint): (WebCore::RenderObject::repaintUsingContainer): (WebCore::RenderObject::repaint): (WebCore::RenderObject::repaintRectangle): (WebCore::RenderObject::repaintAfterLayoutIfNeeded): (WebCore::RenderObject::rectWithOutlineForRepaint): (WebCore::RenderObject::clippedOverflowRectForRepaint): (WebCore::RenderObject::computeRectForRepaint): (WebCore::RenderObject::localToContainerQuad):
  • rendering/RenderObject.h: (WebCore::RenderObject::selectionRectForRepaint): (WebCore::RenderObject::outlineBoundsForRepaint):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::clippedOverflowRectForRepaint): (WebCore::RenderPath::outlineBoundsForRepaint):
  • rendering/RenderPath.h:
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRectForRepaint): (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
  • rendering/RenderReplaced.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::clippedOverflowRectForRepaint): (WebCore::RenderSVGContainer::outlineBoundsForRepaint):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGHiddenContainer.cpp: (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
  • rendering/RenderSVGHiddenContainer.h:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::selectionRectForRepaint): (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
  • rendering/RenderSVGInlineText.h:
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
  • rendering/RenderSVGText.h:
  • rendering/RenderSelectionInfo.h: (WebCore::RenderSelectionInfoBase::repaintContainer):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::clippedOverflowRectForRepaint): (WebCore::RenderTableCell::computeRectForRepaint): (WebCore::RenderTableCell::localToContainerQuad):
  • rendering/RenderTableCell.h:
  • rendering/RenderTableCol.cpp: (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
  • rendering/RenderTableCol.h:
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::clippedOverflowRectForRepaint):
  • rendering/RenderTableRow.h:
  • rendering/RenderText.cpp: (WebCore::RenderText::clippedOverflowRectForRepaint): (WebCore::RenderText::selectionRectForRepaint):
  • rendering/RenderText.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::write):
  • rendering/RenderView.cpp: (WebCore::RenderView::localToContainerQuad): (WebCore::RenderView::computeRectForRepaint):
  • rendering/RenderView.h:
06:38 Changeset [40670] by ap@webkit.org

Build fix.

  • page/animation/KeyframeAnimation.h: A function prototype had two "fromStyle" arguments.
06:34 Changeset [40669] by hausmann@webkit.org

2009-02-05 Yael Aharon <yael.aharon@nokia.com>

Reviewed by Alexey Proskuryakov.
Landed by Simon Hausmann.

https://bugs.webkit.org/show_bug.cgi?id=23733

Use a 2 arguments constructor for KURL to avoid ASSERT failure.

06:06 Moving to Git edited by treat@kde.org
Flesh out why Git makes code review easier/better (diff)
00:44 Moving to Git edited by mrowe@apple.com
(diff)
Note: See TracTimeline for information about the timeline view.