Timeline


and

01/25/09:

23:31 Changeset [40246] by darin@apple.com
  • 2 edits in trunk/WebKit/gtk

2009-01-25 Darin Adler <darin@apple.com>

Try to fix GTK build.

  • webkit/webkitwebview.cpp: Added include of FloatQuad.h.
23:29 Changeset [40245] by darin@apple.com
  • 4 edits in trunk/WebKit

WebKit:

2009-01-25 Darin Adler <darin@apple.com>

Try to fix full build on Mac Leopard.

  • WebKit.xcodeproj/project.pbxproj: Removed WebKitPluginClient.defs from the WebKit target. Maybe this is temporary, but I had to do it to get the full build to succeed.

WebKit/mac:

2009-01-25 Darin Adler <darin@apple.com>

  • Plugins/Hosted/HostedNetscapePluginStream.mm: Added a missing extern "C".
23:26 Changeset [40244] by darin@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-25 Darin Adler <darin@apple.com>

Try to fix Windows build.

  • WebView.cpp: Added FloatQuad.h.
23:14 Changeset [40243] by darin@apple.com
  • 3 edits in trunk/WebCore

2009-01-25 Darin Adler <darin@apple.com>

Try to fix Tiger buildbot.

  • WebCore.xcodeproj/project.pbxproj: Turn off cast-qual for WebDashboardRegion.m.
  • page/mac/WebDashboardRegion.m: (typeName): Added. (-[WebDashboardRegion description]): Use typeName. (-[WebDashboardRegion isEqual:]): Added comment.
22:42 Changeset [40242] by ap@webkit.org
  • 8 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23535
Strengthen debug checks in KURL

Covered (and prompted) by existing tests.

  • platform/KURL.cpp: (WebCore::checkEncodedString): Check that the first character of the URL is an allowed first scheme character, not just that it isn't a slash. (WebCore::KURL::KURL): Assert that parsing didn't affect the string (which must be the case because of parsing being idempotent).
  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::create): Added a check for the URL being valid - if it is not, an empty security origin is created. (WebCore::SecurityOrigin::createFromString): Parse the string as URL, do not just convert it - it is not guaranteed to be properly encoded.
  • dom/Document.cpp: (WebCore::Document::updateBaseURL): As documentURI is an arbitrary string, it needs to be parsed into an URL, not just converted into one.
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createPattern): Create the security origin with createFromString() instead of create(). I do not know where the string comes from and whether it might not be properly encoded, but this change can't hurt, and makes the code slightly more clear.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::accessControlCheck): Create the security origin with createFromString() instead of create(). The string comes from an HTTP response header, so it may not be a properly encoded URL.
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): Do not try to request using invalid URLs.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Updated to call SecurityOrigin::createFromString() (no change in behavior).
21:13 Changeset [40241] by darin@apple.com
  • 2 edits in trunk/WebKit/mac

2009-01-25 Darin Adler <darin@apple.com>

Discussed with Mark Rowe; not sure he reviewed it.

  • Configurations/Base.xcconfig: Add all the same warnings as in WebCore except for -Wcast-qual and -Wunused-parameter, which both need to be off at least for now.
20:14 Changeset [40240] by mrowe@apple.com
  • 8 edits in trunk

Improve the consistency of settings in our .xcconfig files.

Rubber-stamped by Dan Bernstein.

19:40 Changeset [40239] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/table/form-with-table-style-expected.txt

Land table/forms layout test progression.

19:38 Changeset [40238] by hyatt@apple.com
  • 9 edits
    4 adds in trunk

WebCore:

2009-01-25 David Hyatt <hyatt@apple.com>

Fix for https://bugs.webkit.org/show_bug.cgi?id=23524, lots of missing content in table sections.

The new table code created a bug involving markAllDescendantsWithFloatsForLayout, namely that it could
end up marking ancestors of a block as needing layout when that block was still in the process of
doing a layout.

The fix is to add a parameter to markAllDescendantsWithFloatsForLayout that says whether or not
we are "mid-layout." If this flag is set, then the method will make sure to do only local dirtying
of objects to avoid accidentally marking a clean ancestor as needing layout again.

Ultimately the second parameter to setNeedsLayout and setChildNeedsLayout should just be removed,
with a check of whether or not we are mid-layout being done by those methods instead.

Reviewed by Oliver Hunt

Added fast/repaint/dynamic-table-vertical-alignment-change.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
  • rendering/RenderBlock.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::removeFromObjectLists):
  • rendering/RenderObject.h:
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows):

LayoutTests:

2009-01-25 David Hyatt <hyatt@apple.com>

Add layout test for https://bugs.webkit.org/show_bug.cgi?id=23524.

Reviewed by Oliver Hunt

  • fast/repaint/dynamic-table-vertical-alignment-change.html: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.checksum: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.png: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.txt: Added.
19:02 Changeset [40237] by darin@apple.com
  • 4 edits in trunk

JavaScriptCore:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Mark Rowe.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Turn on the following warnings:

-Wcast-qual
-Wextra-tokens
-Wformat=2
-Winit-self
-Wmissing-noreturn
-Wpacked
-Wrendundant-decls

  • Configurations/Base.xcconfig: Added the new warnings. Switched to -Wextra instead of -W for clarity since we don't have to support the older versions of gcc that require the old -W syntax. Since we now use -Wformat=2, removed -Wformat-security. Also removed -Wno-format-y2k since we can have that one on now.

WebCore:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Mark Rowe.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Turn on the following warnings:

-Wcast-qual
-Wextra-tokens
-Wformat=2
-Winit-self
-Wmissing-noreturn
-Wpacked
-Wrendundant-decls

  • Configurations/Base.xcconfig: Added the new warnings. Switched to -Wextra instead of -W for clarity since we don't have to support the older versions of gcc that require the old -W syntax. Since we now use -Wformat=2, removed -Wformat-security. Also removed -Wno-format-y2k since we can have that one on now.
17:32 Changeset [40236] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Oliver Hunt.

  • fix <rdar://problem/6525618> REGRESSION (r39566): NewsFire crashes in string hashing code when opening a Digg RSS article

Test: fast/loader/null-request-after-willSendRequest.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadItem): Null-check the request returned from the client's willSendRequest method.

LayoutTests:

Reviewed by Oliver Hunt.

  • test for <rdar://problem/6525618> REGRESSION (r39566): NewsFire crashes in string hashing code when opening a Digg RSS article
  • fast/loader/null-request-after-willSendRequest-expected.txt: Added.
  • fast/loader/null-request-after-willSendRequest.html: Added.
16:47 Changeset [40235] by hyatt@apple.com
  • 4 edits in trunk/WebCore

2009-01-25 David Hyatt <hyatt@apple.com>

Fix for <rdar://problem/6525392> REGRESSION (r40180): Scroll wheel events over text scroll the page
instead of the ancestor overflow (23525)


Make sure that we always call scroll() on the nearest enclosing RenderBox. No test case is possible
here, since wheel scrolling is currently untestable (the offset varies from machine to machine).

Reviewed by Dan Bernstein

  • page/EventHandler.cpp: (WebCore::scrollAndAcceptEvent): (WebCore::EventHandler::scrollOverflow):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::enclosingBox):
  • rendering/RenderObject.h:
15:42 Changeset [40234] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23538: REGRESSION (r39969): Garbage text instead of blank content rendered when plug-ins are disabled
https://bugs.webkit.org/show_bug.cgi?id=23538
rdar://problem/6523719

I'm not sure how to make a regression test for this, since it depends on plug-ins being disabled.

The main problem here is that when plug-ins were disabled, the code ignored the classId attribute and
the <embed> element entirely. That resulted in a page treating a Flash document as plain HTML rather
than doing fallback.

  • rendering/RenderPartObject.cpp: (WebCore::createClassIdToTypeMap): Added. Broke this out into a separate function so we could get rid of an inelegant if statement. (WebCore::activeXType): Added. To avoid repeating the MIME type for ActiveX and possibly having a typo. (WebCore::havePlugin): Added. Helper function to make sure we don't forget the null check. (WebCore::serviceTypeForClassId): Give this function a return value since that's a more natural way to return a string than an "out" parameter. Fixed the logic to only prefer the ActiveX type over the type guessed from the classId when there actually is an ActiveX plug-in to use. The old function assumed there was one, which I presume right for Chrome on Windows when plug-ins are enabled, but wrong in many other cases, and wrong all the time for all clients on Mac. We don't want to assume either way. Use the new havePlugin function so we handle the case where pluginData is 0. (WebCore::shouldUseEmbedDescendant): Renamed. Simplified the comment. Changed to use serviceTypeForClassId instead of the old version that used an out parameter. Always use the <embed> if there isn't a plug-in that knows how to handle <object> elements. (WebCore::RenderPartObject::updateWidget): Removed null checks of pluginData. The two functions that use this data still need to be called; they still do something even if no plug-ins are present. And they have now been corrected to handle 0 properly.
13:19 Changeset [40233] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-25 Darin Adler <darin@apple.com>

  • rendering/RenderMenuList.cpp: Fix build by adding back needed include.
13:11 Changeset [40232] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-25 Judit Jasz <jasy@inf.u-szeged.hu>

Reviewed by Darin Adler.


Compilation problem fixing
http://bugs.webkit.org/show_bug.cgi?id=23497

  • jit/JITCall.cpp: (JSC::JIT::compileOpCall): Use JSValuePtr::encode.
12:27 Changeset [40231] by darin@apple.com
  • 5 edits in trunk

JavaScriptCore:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Fourth patch: Deal with the last few stray warnings.

  • parser/Parser.cpp: Only declare jscyyparse if it's not already declared. This makes both separate compilation and all-in-one compilation work with the -Wredundant-decls warning.

WebCore:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Fourth patch: Deal with the last few stray warnings.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::firstLineBlock): Handle the const_cast a little better. Also make the local variable be a RenderBlock so the cast is closer to the code that guarantees it's correct.
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::writeStyle): Put the enum into a local variable that's a built-in type before using it with TextStream, so we don't get a warning due to -Wsign-promo.
12:25 Changeset [40230] by darin@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Third patch: Use the noreturn attribute on functions that don't
return to prepare for the use of the -Wmissing-noreturn warning.

  • jit/JITCall.cpp: (JSC::unreachable): Added NO_RETURN.
  • jsc.cpp: (functionQuit): Ditto. (printUsageStatement): Ditto.
  • wtf/AlwaysInline.h: Added definition of NO_RETURN.
12:23 Changeset [40229] by darin@apple.com
  • 43 edits in trunk

WebCore:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23522: use checked casts for render tree
https://bugs.webkit.org/show_bug.cgi?id=23522

Step one: RenderText.

Also change set of RenderFlow* to be a ListHashSet as the comment in the
header indicated.

  • dom/CharacterData.cpp: (WebCore::CharacterData::setData): Use toRenderText. (WebCore::CharacterData::appendData): Ditto. (WebCore::CharacterData::insertData): Ditto. (WebCore::CharacterData::deleteData): Ditto. (WebCore::CharacterData::replaceData): Ditto.
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getUpperLeftCorner): Ditto. (WebCore::ContainerNode::getLowerRightCorner): Ditto.
  • dom/Position.cpp: (WebCore::nextRenderedEditable): Ditto. (WebCore::previousRenderedEditable): Ditto. (WebCore::Position::renderedOffset): Ditto. Also use function members instead of data members of InlineTextBox. (WebCore::Position::upstream): Ditto. (WebCore::Position::downstream): Ditto. (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): Ditto. (WebCore::Position::inRenderedText): Ditto. (WebCore::Position::isRenderedCharacter): Ditto. (WebCore::searchAheadForBetterMatch): Ditto. (WebCore::Position::getInlineBoxAndOffset): Ditto.
  • dom/Range.cpp: Added include of VisiblePosition.h now that it's no longer included in RenderObject.h.
  • dom/Text.cpp: (WebCore::Text::splitText): Use toRenderText. (WebCore::Text::recalcStyle): Ditto.
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText): Ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::debugRenderer): Ditto.
  • editing/TextIterator.cpp: (WebCore::TextIterator::handleTextNode): Ditto. (WebCore::TextIterator::handleTextBox): Ditto. (WebCore::TextIterator::emitText): Ditto. (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
  • editing/VisiblePosition.cpp: Added include of FloatQuad.h now that it's no longer included in RenderObject.h.
  • inspector/InspectorController.cpp: Ditto.
  • page/Frame.cpp: Ditto.
  • rendering/RenderBox.cpp: Ditto.
  • rendering/RenderInline.cpp: Ditto.
  • rendering/RenderPath.cpp: Ditto.
  • rendering/RenderSVGContainer.cpp: Ditto.
  • rendering/RenderSVGImage.cpp: Ditto.
  • rendering/RenderSVGInlineText.cpp: Ditto.
  • rendering/RenderSVGTSpan.cpp: Ditto.
  • rendering/RenderSVGText.cpp: Ditto.
  • rendering/RenderSVGTextPath.cpp: Ditto.
  • rendering/RenderTableCell.cpp: Ditto.
  • rendering/RenderView.cpp: Ditto.
  • editing/visible_units.cpp: (WebCore::startPositionForLine): Use function members instead of data members of InlineTextBox. (WebCore::endPositionForLine): Ditto. (WebCore::startOfParagraph): Use toRenderText. (WebCore::endOfParagraph): Ditto.
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Use toRenderText.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): Ditto.
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::deleteLine): Ditto. (WebCore::InlineTextBox::extractLine): Ditto. (WebCore::InlineTextBox::attachLine): Ditto. (WebCore::InlineTextBox::placeEllipsisBox): Ditto. (WebCore::InlineTextBox::paintDecoration): Ditto. (WebCore::InlineTextBox::paintCompositionUnderline): Ditto. (WebCore::InlineTextBox::offsetForPosition): Ditto. (WebCore::InlineTextBox::positionForOffset): Ditto.
  • rendering/InlineTextBox.h: Made most members private. Use toRenderText.
  • rendering/RenderArena.cpp: (WebCore::RenderArena::allocate): Use static_cast instead of C-style cast. (WebCore::RenderArena::free): Ditto.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addContinuationWithOutline): Use ListHashSet<RenderFlow*> instead of RenderFlowSequencedSet. (WebCore::RenderBlock::paintContinuationOutlines): Ditto. (WebCore::stripTrailingSpace): Ditto. (WebCore::RenderBlock::calcInlinePrefWidths): Ditto. (WebCore::RenderBlock::updateFirstLetter): Ditto.
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::addChild): Use toRenderText.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::dirtyLinesFromChangedChild): Use ListHashSet<RenderFlow*> instead of RenderFlowSequencedSet. (WebCore::RenderFlow::paintLines): Ditto.
  • rendering/RenderMenuList.cpp: Removed some unneeded includes.
  • rendering/RenderMenuList.h: Added now-needed forward declaration of RenderText. Made more members private.
  • rendering/RenderObject.cpp: Updated includes. (WebCore::RenderObject::isEditable): Use toRenderText. (WebCore::RenderObject::positionForPoint): Made non-inline so we wouldn't have to include VisiblePosition.h in the header just for this.
  • rendering/RenderObject.h: Removed unneeded includes and forward declarations. Changed special vertical position values to be constants rather than an enum. Eliminated RenderFlowSequencedSet, and changed clients to use ListHashSet<RenderFlow*>.
  • rendering/RenderText.cpp: (WebCore::RenderText::findNextInlineTextBox): Use function members instead of data members of InlineTextBox. (WebCore::RenderText::positionForCoordinates): Ditto. (WebCore::isInlineFlowOrEmptyText): Use toRenderText. (WebCore::RenderText::previousCharacter): Use function members instead of data members of InlineTextBox. (WebCore::RenderText::position): Ditto. (WebCore::RenderText::caretMinOffset): Ditto. (WebCore::RenderText::caretMaxOffset): Ditto. (WebCore::RenderText::caretMaxRenderedOffset): Ditto.
  • rendering/RenderText.h: Added definition of toRenderText.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::textWithHardLineBreaks): Use toRenderText.
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<): Use toRenderText and toRenderBox. (WebCore::writeTextRun): Ditto. (WebCore::write): Ditto.
  • rendering/bidi.cpp: (WebCore::InlineIterator::increment): Use toRenderText. (WebCore::InlineIterator::current): Ditto. (WebCore::checkMidpoints): Ditto. (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto. (WebCore::RenderBlock::layoutInlineChildren): Ditto. (WebCore::RenderBlock::determineStartPosition): Ditto. (WebCore::shouldSkipWhitespaceAfterStartObject): Ditto. (WebCore::RenderBlock::findNextLineBreak): Ditto.

WebKit/mac:

2009-01-25 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23522: use checked casts for render tree
https://bugs.webkit.org/show_bug.cgi?id=23522

Step one: RenderText.

  • WebView/WebRenderNode.mm: (copyRenderNode): Use toRenderText.
09:29 Changeset [40228] by hausmann@webkit.org
  • 3 edits in trunk/WebKit/qt

2009-01-25 Urs Wolfer <uwolfer@kde.org>

Reviewed by Simon Hausmann.

Add QWebPage::SelectAll to WebAction enum to select all content.

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

09:26 Changeset [40227] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

2009-01-25 Thiago Macieira <thiago.macieira@nokia.com>

Reviewed by Simon Hausmann.

Fix gcc compiler warning (deprecated conversion from constant string to char*)

"" cannot be stored in a char*

09:22 Changeset [40226] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-25 David Boddie <dboddie@trolltech.com>

Reviewed by Simon Hausmann.

Doc: Fixed the terminology used.

09:20 Changeset [40225] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-25 Thiago Macieira <thiago.macieira@nokia.com>

Reviewed by Simon Hausmann.

Rename links from trolltech.com to qtsoftware.com

09:04 Changeset [40224] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-25 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon Hausmann.

Make QWebPage auto-test more robust by cleaning up generated files

Sometimes the auto-test may segfault, leaving behind files because the
call to cleanupTestCase() never happens, so we also clean up the files
at initTestCase() just to make sure we're running in a clean environment.

08:27 QtWebKitJournal edited by hausmann@webkit.org
(diff)
08:21 QtWebKitTodo edited by hausmann@webkit.org
(diff)
06:56 Changeset [40223] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2008-12-20 Urs Wolfer <uwolfer@kde.org>

Reviewed by Simon Hausmann.

Fix: compile qwebhistory.h with pendantic comiler flag.

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

04:03 Changeset [40222] by ap@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Remove a slightly misleading comment from ChangeLog - the issue is related to bug 23500, but not the same.

03:59 Changeset [40221] by ap@webkit.org
  • 12 edits
    2 adds in trunk

Reviewed by Darin Adler.

<rdar://problem/5954398> REGRESSION: 1.1% PLT regression from 33577 and 33578 (encoding fixes)

WebCore:

Changed single argument KURL constructors back to always expect an already encoded string,
eliminating extra conversions.

This is a rather unstable situation, as it is often unclear whether a given string is safe
to convert to KURL without resolving. I think that going forward, the solution is to try to
keep encoded URLs as KURL instances, and not as strings.

  • platform/KURL.h: Updated comments.
  • platform/KURL.cpp: (WebCore::KURL::KURL): In debug builds, verify that the passed string is ASCII-only. The intention is to verify that it is already parsed and encoded by KURL or equivalent code, but since encoding is scheme-dependent, such a verification would be quite complicated. Don't encode the string as UTF-8, as it supposed to be ASCII-only. Removed a hack that made strings beginning with "/" turn into "file:" URLs. I didn't find any reason for it to exist, but I saw several cases where this code path was taken inadvertently (see examples in LayoutTests/ChangeLog). (WebCore::KURL::setProtocol): Using a user-provided string without validation or encoding is clearly wrong here (e.g., the "protocol" can be set to a full URL, effectively replacing the old one), and an already encoded string is expected by parse(). In debug builds, non-ASCII input will make an assertion in parse() fail. Added a FIXME. (WebCore::KURL::setHost): Ditto. (WebCore::KURL::setPort): Ditto. (WebCore::KURL::setHostAndPort): Ditto. (WebCore::KURL::setUser): Ditto. (WebCore::KURL::setPass): Ditto. (WebCore::KURL::setRef): Ditto. (WebCore::KURL::setQuery): Ditto. (WebCore::KURL::setPath): Ditto. Note that problems described in bug 23500 mask some of the problems in release builds currently, as the incorrectly parsed URL is ignored. (WebCore::KURL::parse): Verify that the passed string is already encoded.
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseMappedAttribute): (WebCore::HTMLLinkElement::process):
  • html/HTMLLinkElement.h: Changed to avoid using invalid URLs (this was causing problems on DNS prefetch tests, see LayoutTests/ChangeLog).
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::init): Create an empty KURL without indirection for a small speedup. (WebCore::FrameLoader::requestFrame): Resolve and encode javascript URLs properly, now that String to KURL conversion requires the string to be already encoded.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Resolve and encode the origin. HTML5 seems a little unclear on how this should work (it talks about "either parsing it as a URL, or resolving it", and then somehow compares unaltered targetOrigin string to a security origin object), so I just made the code as close to what we already had as possible.

LayoutTests:

  • http/tests/misc/dns-prefetch-control-expected.txt:
  • http/tests/misc/dns-prefetch-control.html: Google documentation for DNS Prefetch makes use of net-path relative URLs (server-name), explaining that scheme is not necessary. This is of course true, but this test uses data: subframes, and data: is a non-hierachical scheme, so resolving such URLs fails, resulting in a KURL object that is not valid. WebKit used to ignore this, and tried to create a URL from this string again, now with a single argument KURL constructor, which resulted in a valid file: URL, which was successfully used! Both issues have been corrected in WebCore, so I had to change the test to no longer use relative net-path URLs.
  • http/tests/security/postMessage/invalid-origin-throws-exception-expected.txt:
  • http/tests/security/postMessage/invalid-origin-throws-exception.html: URLs that start with "/" are no longer converted to "file:" ones, so the results now match Firefox.
  • http/tests/uri/resolve-encoding-relative-expected.txt: Added.
  • http/tests/uri/resolve-encoding-relative.html: Added. Added a test to cover some cases of relative URL resolving that were not covered before. Expected results are taken from Firefox 3, and WebKit doesn't match in how fragments are encoded (we use document encoding, while Firefox uses UTF-8). Since fragments are not sent in HTTP requests, this is not too dangerous, but the Firefox behavior looks more consistent.

01/24/09:

16:34 Changeset [40220] by treat@webkit.org
  • 2 edits in trunk/WebKit/qt

Oops, fix the Qt build.

14:41 Changeset [40219] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-24 Eric Carlson <eric.carlson@apple.com>

<video> controls visibility test needs to dump render tree as text because
the test does not always end at the same time, so the timeline slider thumb
is not always at the same position.

  • media/video-controls-visible-audio-only.html:
  • platform/mac/media/video-controls-visible-audio-only-expected.txt:
14:39 Changeset [40218] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

Add QWebFrame::renderContents() method which allows arbitary rendering
of any content region within the QWebFrame. It also does not draw any
scrollbars.

12:59 Changeset [40217] by darin@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-24 Darin Adler <darin@apple.com>

Try to fix expected results for new video element test.

  • platform/mac/media/video-controls-visible-audio-only-expected.png: Landed new result generated on my machine.
  • platform/mac/media/video-controls-visible-audio-only-expected.txt: Ditto.
12:40 Changeset [40216] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-24 Darin Adler <darin@apple.com>

Try to fix Qt build.

  • WebCore.pro: Added JSTextCustom.cpp.
07:10 Changeset [40215] by cmarrin@apple.com
  • 8 edits in trunk/WebCore

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

Change styleAvailable functionality to be a linked list
rather than scanning every CompositeAnimation for
Animations that are waiting for styleAvailable. This has
potential for large performance improvement in cases where
there are many animations firing at once. But it will also
help in my next fix, which is to synchronize software and
accelerated animations.

I also changed slightly when the beginAnimationUpdate and
endAnimationUpdate calls are made. But this has no real
effect on performance or behavior.

01:55 Changeset [40214] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Force inlining of Lexer::matchPunctuator

Reviewed by Maciej Stachowiak.

2.2% win when parsing jQuery, Mootools, Prototype, etc

01:39 Changeset [40213] by ap@webkit.org
  • 5 edits
    2 adds in trunk

Reviewed by Darin Adler.

<rdar://problem/6368059> REGRESSION: URL encoding problems on http://www.cineman.ch

Test: http/tests/xmlhttprequest/encode-request-url-2.html

  • platform/KURL.cpp: (WebCore::appendASCII): Added a helper function. (WebCore::KURL::KURL): Explicitly encode the URL to call two-argument parse() with better specified behavior. (WebCore::KURL::init): Ditto. This avoids trying to round-trip an URL encoded into a byte stream, but not yet transformed to ASCII-only using percent escapes. Since different parts of the byte stream can use different encodings, round-tripping is not possible. (WebCore::KURL::parse): Reverted an earlier change that made the single-argument version of this function convert the string to utf-8. I think that on the remanining code paths, it is correct to assume that the string is all ASCII, but I'm not yet confident enough to drop a FIXME warning.
00:05 Changeset [40212] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2009-01-24 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix after r40170

  • GNUmakefile.am: Removed editing/RemoveNodeAttributeCommand.cpp and editing/RemoveNodeAttributeCommand.h

01/23/09:

22:19 Changeset [40211] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build after r40205.

21:47 Changeset [40210] by beidson@apple.com
  • 11 edits
    2 adds in trunk/WebCore

2009-01-23 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler

In CachedPage, break off per-Frame pieces of data into a CachedFrame object.

  • GNUmakefile.am:
  • WebCore.base.exp:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • history/CachedFrame.cpp: Added. (WebCore::cachedFrameCounter): (WebCore::CachedFrame::CachedFrame): (WebCore::CachedFrame::~CachedFrame): (WebCore::CachedFrame::restore): (WebCore::CachedFrame::clear): (WebCore::CachedFrame::setCachedFramePlatformData): (WebCore::CachedFrame::cachedFramePlatformData):
  • history/CachedFrame.h: Added. (WebCore::CachedFrame::document): (WebCore::CachedFrame::documentLoader): (WebCore::CachedFrame::view): (WebCore::CachedFrame::mousePressNode): (WebCore::CachedFrame::url): (WebCore::CachedFrame::domWindow):
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore): (WebCore::CachedPage::clear): (WebCore::CachedPage::setCachedFramePlatformData): (WebCore::CachedPage::cachedFramePlatformData):
  • history/CachedPage.h: (WebCore::CachedPage::document): (WebCore::CachedPage::documentLoader): (WebCore::CachedPage::view): (WebCore::CachedPage::mousePressNode): (WebCore::CachedPage::url): (WebCore::CachedPage::domWindow):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePageForHistoryItem): Setting the DocumentLoader independently of creating a CachedPage was a historical relic. Take the opportunity to clean that up.
19:59 Changeset [40209] by hyatt@apple.com
  • 11 edits in trunk/WebCore

2009-01-23 David Hyatt <hyatt@apple.com>

Add ASSERTs to catch anyone trying to obtain the width/height of an inline flow. Fix up all the places
that triggered the ASSERT (since all of these places are effectively regressions from my landing that
devirtualized width()/height()).

Reviewed by Adele

  • dom/Position.cpp: (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
  • editing/DeleteButtonController.cpp: (WebCore::isDeletableElement):
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isKeyboardFocusable):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::clientWidth): (WebCore::RenderBox::clientHeight): (WebCore::RenderBox::scrollWidth): (WebCore::RenderBox::scrollHeight): (WebCore::RenderBox::absoluteOutlineBounds):
  • rendering/RenderBox.h: (WebCore::RenderBox::width): (WebCore::RenderBox::height): (WebCore::RenderBox::size): (WebCore::RenderBox::frameRect): (WebCore::RenderBox::borderBoundingBox):
  • rendering/RenderFlow.h: (WebCore::RenderFlow::borderBoundingBox):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition):
  • rendering/RenderScrollbarPart.cpp: (WebCore::RenderScrollbarPart::styleWillChange):
  • rendering/RenderScrollbarPart.h:
  • wml/WMLAElement.cpp: (WebCore::WMLAElement::isKeyboardFocusable):
19:03 Changeset [40208] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-23 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoff Garen.

Fix for <rdar://problem/6126212>
Ensure that callbacks out from the JSC interface are only allowed
to return in reverse-chronological order to that in which they were
made. If we allow earlier callbacks to return first, then this may
result in setions of the RegisterFile in use by another thread
being trampled.

See uber-comment in JSLock.h for details.

  • runtime/JSLock.cpp: (JSC::JSLock::DropAllLocks::DropAllLocks): (JSC::JSLock::DropAllLocks::~DropAllLocks):
18:39 Changeset [40207] by darin@apple.com
  • 4 edits in trunk/WebCore

2009-01-23 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Second patch: Slightly less simple cases of various warnings.

  • bridge/jni/jni_runtime.h: (JSC::Bindings::JavaString::_commonInit): Use reinterpret_cast here and avoid casting away const.
  • dom/XMLTokenizerLibxml2.cpp: (WebCore::PendingCallbacks::appendStartElementNSCallback): Use static_cast instead of reinterpret_cast; this is casting the result of malloc, and the idiom is to use static_cast, which works because we're casting from void*. (WebCore::PendingCallbacks::PendingStartElementNSCallback::call): Use const_cast instead C-style casts.
  • xml/XSLTUnicodeSort.cpp: (inlineXSLTTransformError): Tweak soft linking of xsltTransformError to use a macro instead of redefining the function.
18:23 Changeset [40206] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-23 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23475: fast/text/find-backwards.html fails with ICU disabled SearchBuffer
https://bugs.webkit.org/show_bug.cgi?id=23475

  • editing/TextIterator.cpp: (WebCore::SearchBuffer::search): Set the character start flag to false to ensure we won't ever return the same result twice. There are other ways we could accomplish this, mentioned in the comment, but this one was the smallest and cleanest I could think of.
18:22 Changeset [40205] by darin@apple.com
  • 7 edits
    1 copy in trunk/WebCore

2009-01-23 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23510: REGRESSION (r40171): CDATASection objects not getting proper JavaScript wrappers
https://bugs.webkit.org/show_bug.cgi?id=23510

That patch fixed the optimization that's supposed to give a faster path for
allocating the wrappers for DOM Text objects. But CDATASection is the one
subclass of Text objects.

  • GNUmakefile.am: Added JSCDATASectionCustom.cpp.
  • WebCore.scons: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • WebCoreSources.bkl: Ditto.
  • bindings/js/JSCDATASectionCustom.cpp: Copied from bindings/js/JSTextCustom.cpp. (WebCore::toJSNewlyCreated): Changed to do CDATASection, not Text.
  • bindings/scripts/CodeGeneratorJS.pm: Added another toJSNewlyCreated function for CDATASection. We don't want to have to check when creating a wrapper for a Text object whether it's a CDATASection object or not, so we need to do this overload at compile time.
18:00 Changeset [40204] by zimmermann@webkit.org
  • 36 edits
    4 adds in trunk/WebCore

Reviewed by Eric Seidel.

Add a base class for WML form control elements: WMLFormControlElement (as it's designed in HTML as well).
WMLFormControlElement inherits from WMLElement and FormControlElement (just like the HTMLFormControlElement equivalent).

WMLInputElement / WMLOptionElement / WMLOptGroupElement are supposed to inherit from the new WMLFormControlElement class.
Now WMLInputElement & WMLOptGroupElement only inherit from WMLElement and FormControlElement, but WMLOptionElement inherits
from WMLEventHandlingElement (which in turn inherits from WMLElement) and FormControlElement. In order to introduce a shared
base class, WMLEventHandlingElement is no longer allowed to inherit from WMLElement directly. Instead it should turn into
another base class, just like FormControlElement.

Add a base class for form control elements 'with state': FormControlElementWithState, serving as base class for
HTMLFormControlElementWithState and WMLFormControlElementWithState. -> Make Document operate on FormControlElementWithState
objects instead of HTMLFormControlElementWithState objects, to support save/restore control state for non HTMLFormControlElements.

Rename isGenericFormElement() to isFormControlElement(), and move it to Element.h
Add new virtual function isFormControlElementWithState() to Element.h.

17:23 Changeset [40203] by bfulgham@webkit.org
  • 3 edits in trunk/WebKit/win

Bug 23492: Separating the WebKitSystemInterface Calls.

17:21 Changeset [40202] by cfleizach@apple.com
  • 3 edits in trunk/WebCore

Bug 23509: Crash at -[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]

Move null checking into makeRange

16:54 Changeset [40201] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Gtk build too after removal of RenderBox::toConstRenderBox

16:52 Changeset [40200] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build after rename of RenderBox::toConstRenderBox -> toRenderBox

16:47 Changeset [40199] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build after r40168.

16:26 Changeset [40198] by beidson@apple.com
  • 15 edits
    3 moves in trunk

WebCore:

2009-01-23 Brady Eidson <beidson@apple.com>

Rubberstamped by Darin Adler

Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role.

  • GNUmakefile.am:
  • WebCore.base.exp:
  • WebCore.order:
  • WebCore.xcodeproj/project.pbxproj:
  • history/CachedFramePlatformData.h: Copied from WebCore/history/CachedPagePlatformData.h. (WebCore::CachedFramePlatformData::~CachedFramePlatformData):
  • history/CachedPagePlatformData.h: Removed.
  • history/CachedPage.cpp: (WebCore::CachedPage::clear): (WebCore::CachedPage::setCachedFramePlatformData): (WebCore::CachedPage::cachedFramePlatformData):
  • history/CachedPage.h:

WebKit:

2009-01-23 Brady Eidson <beidson@apple.com>

Rubberstamped by Darin Adler

Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2009-01-23 Brady Eidson <beidson@apple.com>

Rubberstamped by Darin Adler

Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role.

  • WebCoreSupport/WebCachedFramePlatformData.h: Copied from WebKit/mac/WebCoreSupport/WebCachedPagePlatformData.h. (WebCachedFramePlatformData::WebCachedFramePlatformData):
  • WebCoreSupport/WebCachedPagePlatformData.h: Removed.
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::savePlatformDataToCachedPage): (WebFrameLoaderClient::transitionToCommittedFromCachedPage):
  • WebKit.order:

WebKit/win:

2009-01-23 Brady Eidson <beidson@apple.com>

Rubberstamped by Darin Adler

Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role.

  • WebCachedFramePlatformData.h: Copied from WebKit/win/WebCachedPagePlatformData.h. (WebCachedFramePlatformData::WebCachedFramePlatformData):
  • WebCachedPagePlatformData.h: Removed.
  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::savePlatformDataToCachedPage):
  • WebKit.vcproj/WebKit.vcproj:
16:23 Changeset [40197] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

Fix drawing in situations where sub-portions of the bitmap are to be drawn to the screen.

16:19 Changeset [40196] by kevino@webkit.org
  • 3 edits in trunk/WebCore

Build fixes for recent changes.

15:33 Changeset [40195] by hyatt@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderThemeWin.cpp

Fix Windows bustage.

15:33 Changeset [40194] by hyatt@apple.com
  • 1 edit in trunk/WebCore/page/EventHandler.cpp

Fix Windows bustage.

15:33 Changeset [40193] by eric.carlson@apple.com
  • 5 edits
    4 adds in trunk

2009-01-23 Eric Carlson <eric.carlson@apple.com>

Reviewed by Adele Peterson


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

Implement QTMovieWin::hasVideo so the controller on an audio-only <video> element
is never hidden (as with an <audio> element).

Test: media/video-controls-visible-audio-only.html

  • platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::hasVideo):
  • platform/graphics/win/QTMovieWin.cpp: (QTMovieWin::hasVideo):
  • platform/graphics/win/QTMovieWin.h:

2009-01-23 Eric Carlson <eric.carlson@apple.com>

Reviewed by Adele Peterson

Test for behavior of <video> element controller when a media file has
only audio.
https://bugs.webkit.org/show_bug.cgi?id=23407

  • media/video-controls-visible-audio-only.html: Added.
  • platform/mac/media/video-controls-visible-audio-only-expected.checksum: Added.
  • platform/mac/media/video-controls-visible-audio-only-expected.png: Added.
  • platform/mac/media/video-controls-visible-audio-only-expected.txt: Added.
15:25 Changeset [40192] by hyatt@apple.com
  • 33 edits in trunk/WebCore

2009-01-23 David Hyatt <hyatt@apple.com>

Make toRenderBox a non-member function. Rename toConstRenderBox to just also be called toRenderBox.

Reviewed by Oliver Hunt

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::sizingBox): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getUpperLeftCorner): (WebCore::ContainerNode::getLowerRightCorner):
  • dom/Element.cpp: (WebCore::Element::scrollByUnits):
  • dom/Position.cpp: (WebCore::endsOfNodeAreVisuallyDistinctPositions): (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): (WebCore::Position::isCandidate):
  • editing/DeleteButtonController.cpp: (WebCore::isDeletableElement):
  • editing/EditorCommand.cpp: (WebCore::verticalScrollDistance):
  • editing/TextIterator.cpp: (WebCore::shouldEmitExtraNewlineForNode):
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isKeyboardFocusable):
  • html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::isFocusable):
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::width): (WebCore::HTMLFrameElementBase::height):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseDraggedEvent): (WebCore::EventHandler::autoscrollTimerFired): (WebCore::EventHandler::updateAutoscrollRenderer): (WebCore::EventHandler::stopAutoscrollTimer): (WebCore::EventHandler::scrollOverflow):
  • page/FrameView.cpp: (WebCore::FrameView::layout):
  • page/animation/AnimationBase.cpp: (WebCore::blendFunc):
  • rendering/InlineBox.cpp: (WebCore::InlineBox::adjustPosition):
  • rendering/InlineBox.h: (WebCore::InlineBox::renderBox):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::clearFloats):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::offsetFromContainer): (WebCore::RenderBox::computeAbsoluteRepaintRect): (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
  • rendering/RenderBox.h: (WebCore::toRenderBox): (WebCore::RenderBox::previousSiblingBox): (WebCore::RenderBox::nextSiblingBox): (WebCore::RenderBox::parentBox):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::absoluteClippedOverflowRect):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::resize): (WebCore::RenderLayer::boundingBox):
  • rendering/RenderObject.cpp: (WebCore::addLayers): (WebCore::RenderObject::removeLayers): (WebCore::RenderObject::moveLayers): (WebCore::RenderObject::findNextLayer): (WebCore::RenderObject::enclosingLayer): (WebCore::RenderObject::setNeedsLayout): (WebCore::RenderObject::setNeedsPositionedMovementLayout): (WebCore::RenderObject::repaintAfterLayoutIfNeeded): (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline): (WebCore::RenderObject::computeAbsoluteRepaintRect): (WebCore::RenderObject::localToAbsolute): (WebCore::RenderObject::absoluteToLocal): (WebCore::RenderObject::localToAbsoluteQuad): (WebCore::RenderObject::offsetFromContainer): (WebCore::RenderObject::removeFromObjectLists): (WebCore::RenderObject::destroy): (WebCore::RenderObject::updateHitTestResult): (WebCore::RenderObject::addDashboardRegions):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::hitTestMediaControlPart): (WebCore::RenderTheme::baselinePosition):
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::hitTestMediaControlPart):
  • rendering/RenderTreeAsText.cpp: (WebCore::externalRepresentation):
  • rendering/bidi.cpp: (WebCore::inlineWidth): (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::requiresLineBox): (WebCore::RenderBlock::findNextLineBreak):
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport):
  • wml/WMLAElement.cpp: (WebCore::WMLAElement::isKeyboardFocusable):
  • wml/WMLInputElement.cpp: (WebCore::isInputFocusable):
15:03 Changeset [40191] by cfleizach@apple.com
  • 2 edits in trunk/WebCore

2009-01-23 Chris Fleizach <cfleizach@apple.com>

Reviewed by Beth Dakin.

Bug 23509: Crash at -[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]
https://bugs.webkit.org/show_bug.cgi?id=23509


Add null checking around next/previous sentence retrieval in AX code

  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::nextSentenceEndPosition): (WebCore::AccessibilityObject::previousSentenceStartPosition):
14:50 Changeset [40190] by adele@apple.com
  • 2 edits in trunk/WebKit/mac

2009-01-23 Adele Peterson <adele@apple.com>

Build fix.

Use new linesBoundingBox method instead of
boundingBoxWidth and boundingBoxHeight for RenderText objects.

  • WebView/WebRenderNode.mm: (copyRenderNode):
14:41 Changeset [40189] by kevino@webkit.org
  • 2 edits in trunk/WebKit/wx

wx build fix, add missing include dir.

14:39 Changeset [40188] by ddkilzer@apple.com
  • 2 edits in trunk/WebKitTools

2009-01-23 David Kilzer <ddkilzer@apple.com>

  • Scripts/do-webcore-rename: Removed 10 header guard renames that had already been fixed, and updated 4 renames whose original values had changed.
14:38 Changeset [40187] by ddkilzer@apple.com
  • 1 edit in trunk/JavaScriptCore/DerivedSources.make

Added missing comma to copyright.

14:20 Changeset [40186] by hyatt@apple.com
  • 3 edits in trunk/LayoutTests/platform/mac/svg/batik/text

Land new results now that text runs at negative positions dump their widths correctly.

14:19 Changeset [40185] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/editing/style/smoosh-styles-003-expected.txt

Land new results now that text runs at negative positions dump their widths correctly.

14:19 Changeset [40184] by hyatt@apple.com
  • 3 edits in trunk/LayoutTests/platform/mac/fast

Update the test results for compacts and run-ins now that they dump accurate positions.

14:18 Changeset [40183] by hyatt@apple.com
  • 4 adds in trunk/LayoutTests

Add new repaint test for hover regression.

14:17 Changeset [40182] by hyatt@apple.com
  • 14 edits in trunk/WebCore

2009-01-23 David Hyatt <hyatt@apple.com>

Fix for <rdar://problem/6518850> REGRESSION: hover feedback not showing on many sites

Inline flow repainting was broken because it relied on width() and height(). Give RenderFlow a linesBoundingBox
method for obtaining a reasonable bounding box to use for repainting. Eliminate the methods from RenderInline
since compacts/run-ins need them too, so putting them on RenderFlow is necessary.

For consistency, change RenderText's version of these methods into the single linesBoundingBox method as
well.

Reviewed by Oliver Hunt

  • WebCore.base.exp:
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getUpperLeftCorner): (WebCore::ContainerNode::getLowerRightCorner):
  • dom/Position.cpp: (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockHeightForPositioned):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::absoluteClippedOverflowRect): (WebCore::RenderFlow::linesBoundingBox):
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp:
  • rendering/RenderInline.h: (WebCore::RenderInline::offsetWidth): (WebCore::RenderInline::offsetHeight):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition):
  • rendering/RenderText.cpp: (WebCore::RenderText::linesBoundingBox):
  • rendering/RenderText.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::write):
13:28 Changeset [40181] by hyatt@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderFlow.cpp

Fix RenderFlow. Botched the application of my patch.

13:25 Changeset [40180] by hyatt@apple.com
  • 47 edits in trunk/WebCore

2009-01-23 David Hyatt <hyatt@apple.com>

Move layer() into RenderBox and make it non-virtual. Move all of the scrolling functions from RenderObject
to RenderBox and devirtualize as many as possible. Clean up styleWillChange to factor code specific to
RenderBox and RenderBlock into their appropriate subclasses. Stubbed out an empty styleWillChange on
RenderText, since none of the work done in styleWillChange was relevant to text nodes.

Reviewed by Sam Weinig

  • dom/Document.cpp: (WebCore::Document::elementFromPoint): (WebCore::Document::renderView): (WebCore::Document::prepareMouseEvent):
  • dom/Document.h:
  • dom/Element.cpp: (WebCore::Element::scrollByUnits):
  • editing/SelectionController.cpp: (WebCore::SelectionController::contains):
  • html/HTMLMarqueeElement.cpp: (WebCore::HTMLMarqueeElement::start): (WebCore::HTMLMarqueeElement::stop):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::topRenderer): (WebCore::AccessibilityRenderObject::visiblePositionForPoint): (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
  • page/AccessibilityRenderObject.h:
  • page/EventHandler.cpp: (WebCore::scrollAndAcceptEvent): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::handleMouseDraggedEvent): (WebCore::EventHandler::updateSelectionForMouseDrag): (WebCore::EventHandler::autoscrollTimerFired): (WebCore::EventHandler::updateAutoscrollRenderer): (WebCore::EventHandler::stopAutoscrollTimer): (WebCore::EventHandler::scrollOverflow): (WebCore::EventHandler::handleWheelEvent): (WebCore::EventHandler::hoverTimerFired):
  • page/Frame.cpp: (WebCore::Frame::clearTimers):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::styleWillChange):
  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::styleWillChange): (WebCore::RenderBox::verticalScrollbarWidth): (WebCore::RenderBox::horizontalScrollbarHeight): (WebCore::RenderBox::scroll): (WebCore::RenderBox::canBeProgramaticallyScrolled): (WebCore::RenderBox::autoscroll): (WebCore::RenderBox::panScroll): (WebCore::RenderBox::offsetFromContainer): (WebCore::RenderBox::computeAbsoluteRepaintRect):
  • rendering/RenderBox.h: (WebCore::RenderBox::layer): (WebCore::RenderBox::requiresLayer): (WebCore::RenderBox::stopAutoscroll): (WebCore::RenderBox::hasAutoVerticalScrollbar): (WebCore::RenderBox::hasAutoHorizontalScrollbar): (WebCore::RenderBox::scrollsOverflow): (WebCore::RenderBox::scrollsOverflowX): (WebCore::RenderBox::scrollsOverflowY): (WebCore::RenderBox::includeVerticalScrollbarSize): (WebCore::RenderBox::includeHorizontalScrollbarSize):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::absoluteClippedOverflowRect): (WebCore::RenderFlow::addFocusRingRects):
  • rendering/RenderForeignObject.cpp:
  • rendering/RenderForeignObject.h: (WebCore::RenderForeignObject::requiresLayer):
  • rendering/RenderInline.cpp:
  • rendering/RenderInline.h: (WebCore::RenderInline::requiresLayer):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::childrenClipRect): (WebCore::RenderLayer::selfClipRect):
  • rendering/RenderListBox.cpp:
  • rendering/RenderListBox.h:
  • rendering/RenderObject.cpp: (WebCore::addLayers): (WebCore::RenderObject::removeLayers): (WebCore::RenderObject::moveLayers): (WebCore::RenderObject::findNextLayer): (WebCore::RenderObject::enclosingLayer): (WebCore::RenderObject::setNeedsLayout): (WebCore::RenderObject::setNeedsPositionedMovementLayout): (WebCore::RenderObject::computeAbsoluteRepaintRect): (WebCore::RenderObject::styleWillChange): (WebCore::RenderObject::localToAbsolute): (WebCore::RenderObject::absoluteToLocal): (WebCore::RenderObject::localToAbsoluteQuad): (WebCore::RenderObject::offsetFromContainer): (WebCore::RenderObject::destroy):
  • rendering/RenderObject.h:
  • rendering/RenderPath.cpp:
  • rendering/RenderPath.h: (WebCore::RenderPath::requiresLayer):
  • rendering/RenderReplica.h: (WebCore::RenderReplica::requiresLayer):
  • rendering/RenderSVGContainer.cpp:
  • rendering/RenderSVGContainer.h: (WebCore::RenderSVGContainer::requiresLayer):
  • rendering/RenderSVGHiddenContainer.cpp:
  • rendering/RenderSVGHiddenContainer.h: (WebCore::RenderSVGHiddenContainer::requiresLayer):
  • rendering/RenderSVGImage.cpp:
  • rendering/RenderSVGImage.h: (WebCore::RenderSVGImage::requiresLayer):
  • rendering/RenderSVGInline.h: (WebCore::RenderSVGInline::requiresLayer):
  • rendering/RenderSVGInlineText.h: (WebCore::RenderSVGInlineText::requiresLayer):
  • rendering/RenderSVGText.cpp:
  • rendering/RenderSVGText.h: (WebCore::RenderSVGText::requiresLayer):
  • rendering/RenderScrollbarPart.h: (WebCore::RenderScrollbarPart::requiresLayer):
  • rendering/RenderSlider.cpp: (WebCore::RenderSlider::setCurrentPosition):
  • rendering/RenderTableCell.cpp:
  • rendering/RenderTableCell.h: (WebCore::RenderTableCell::requiresLayer):
  • rendering/RenderTableCol.h: (WebCore::RenderTableCol::requiresLayer):
  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows):
  • rendering/RenderText.h: (WebCore::RenderText::styleWillChange):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::autoscroll): (WebCore::RenderTextControl::scroll):
  • rendering/RenderTextControl.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::write): (WebCore::externalRepresentation):
13:18 Changeset [40179] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2009-01-23 Anders Carlsson <andersca@apple.com>

Fix 64-bit build.


  • Plugins/Hosted/ProxyInstance.mm: (WebKit::proxyClass):
12:56 Changeset [40178] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2009-01-23 Anders Carlsson <andersca@apple.com>

Fix GCC 4.0 build.


  • Configurations/Base.xcconfig:
12:53 Changeset [40177] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-23 Anders Carlsson <andersca@apple.com>

Fix tyop.


  • editing/markup.cpp: (WebCore::joinMarkups):
12:51 Changeset [40176] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-23 Darin Adler <darin@apple.com>

Try to fix WX build.

  • runtime/JSGlobalObjectFunctions.h: Include <wtf/unicode/Unicode.h> for the definition of UChar.
12:50 Changeset [40175] by andersca@apple.com
  • 5 edits in trunk/WebCore

2009-01-23 Anders Carlsson <andersca@apple.com>

Reviewed by Darin Adler.

  • Configurations/Base.xcconfig: Fix GCC 4.0 build.


  • editing/markup.cpp: (WebCore::joinMarkups): Pass a const reference to the vector.


  • html/HTMLElement.cpp:
  • platform/text/String.cpp: Add comments indicating that these functions are for use in the debugger.
12:37 Changeset [40174] by andersca@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-01-23 Anders Carlsson <andersca@apple.com>

  • Configurations/Base.xcconfig: GCC 4.0 build fix.


  • runtime/JSNumberCell.h: 64-bit build fix.
12:35 Changeset [40173] by darin@chromium.org
  • 10 edits
    8 adds in trunk/WebCore

2009-01-23 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23506
Upstream Chromium's image decoders for use with PLATFORM(SKIA)

  • platform/image-decoders/skia/BMPImageDecoder.cpp: Added.
  • platform/image-decoders/skia/BMPImageDecoder.h: Added.
  • platform/image-decoders/skia/BMPImageReader.cpp: Added.
  • platform/image-decoders/skia/BMPImageReader.h: Added.
  • platform/image-decoders/skia/GIFImageDecoder.cpp: (WebCore::GIFImageDecoderPrivate::GIFImageDecoderPrivate): (WebCore::GIFImageDecoderPrivate::decode): (WebCore::GIFImageDecoderPrivate::getColorMap): (WebCore::GIFImageDecoder::GIFImageDecoder): (WebCore::GIFImageDecoder::isSizeAvailable): (WebCore::GIFImageDecoder::frameCount): (WebCore::GIFImageDecoder::frameBufferAtIndex): (WebCore::GIFImageDecoder::clearFrameBufferCache): (WebCore::GIFImageDecoder::decode): (WebCore::GIFImageDecoder::sizeNowAvailable): (WebCore::GIFImageDecoder::initFrameBuffer): (WebCore::GIFImageDecoder::prepEmptyFrameBuffer): (WebCore::GIFImageDecoder::haveDecodedRow): (WebCore::GIFImageDecoder::frameComplete):
  • platform/image-decoders/skia/GIFImageDecoder.h: (WebCore::GIFImageDecoder::filenameExtension): (WebCore::GIFImageDecoder::frameDurationAtIndex): (WebCore::GIFImageDecoder::):
  • platform/image-decoders/skia/GIFImageReader.cpp: (GIFImageReader::do_lzw): (GIFImageReader::read):
  • platform/image-decoders/skia/GIFImageReader.h:
  • platform/image-decoders/skia/ICOImageDecoder.cpp: Added.
  • platform/image-decoders/skia/ICOImageDecoder.h: Added.
  • platform/image-decoders/skia/ImageDecoder.h: (WebCore::RefCountedNativeImageSkia::create): (WebCore::RefCountedNativeImageSkia::bitmap): (WebCore::RefCountedNativeImageSkia::RefCountedNativeImageSkia): (WebCore::RGBA32Buffer::): (WebCore::RGBA32Buffer::RGBA32Buffer): (WebCore::RGBA32Buffer::~RGBA32Buffer): (WebCore::RGBA32Buffer::operator=): (WebCore::RGBA32Buffer::clear): (WebCore::RGBA32Buffer::copyBitmapData): (WebCore::RGBA32Buffer::bitmap): (WebCore::RGBA32Buffer::setSize): (WebCore::RGBA32Buffer::width): (WebCore::RGBA32Buffer::height): (WebCore::RGBA32Buffer::rect): (WebCore::RGBA32Buffer::status): (WebCore::RGBA32Buffer::duration): (WebCore::RGBA32Buffer::disposalMethod): (WebCore::RGBA32Buffer::hasAlpha): (WebCore::RGBA32Buffer::setRect): (WebCore::RGBA32Buffer::setStatus): (WebCore::RGBA32Buffer::setDuration): (WebCore::RGBA32Buffer::setDisposalMethod): (WebCore::RGBA32Buffer::setHasAlpha): (WebCore::RGBA32Buffer::setRGBA): (WebCore::ImageDecoder::ImageDecoder): (WebCore::ImageDecoder::~ImageDecoder): (WebCore::ImageDecoder::setData): (WebCore::ImageDecoder::isSizeAvailable): (WebCore::ImageDecoder::size): (WebCore::ImageDecoder::frameCount): (WebCore::ImageDecoder::repetitionCount): (WebCore::ImageDecoder::supportsAlpha): (WebCore::ImageDecoder::failed): (WebCore::ImageDecoder::setFailed): (WebCore::ImageDecoder::clearFrameBufferCache): (WebCore::ImageDecoder::setSize): (WebCore::ImageDecoder::isOverSize):
  • platform/image-decoders/skia/JPEGImageDecoder.cpp: (WebCore::JPEGImageReader::JPEGImageReader): (WebCore::JPEGImageReader::decode): (WebCore::JPEGImageDecoder::isSizeAvailable): (WebCore::JPEGImageDecoder::outputScanlines):
  • platform/image-decoders/skia/JPEGImageDecoder.h: (WebCore::JPEGImageDecoder::filenameExtension): (WebCore::JPEGImageDecoder::supportsAlpha): (WebCore::JPEGImageDecoder::reader):
  • platform/image-decoders/skia/PNGImageDecoder.cpp: (WebCore::PNGImageReader::close): (WebCore::PNGImageDecoder::PNGImageDecoder): (WebCore::PNGImageDecoder::isSizeAvailable): (WebCore::PNGImageDecoder::frameBufferAtIndex): (WebCore::PNGImageDecoder::decode): (WebCore::PNGImageDecoder::decodingFailed): (WebCore::PNGImageDecoder::headerAvailable): (WebCore::rowAvailable): (WebCore::PNGImageDecoder::rowAvailable): (WebCore::PNGImageDecoder::pngComplete):
  • platform/image-decoders/skia/PNGImageDecoder.h: (WebCore::PNGImageDecoder::filenameExtension): (WebCore::PNGImageDecoder::reader):
  • platform/image-decoders/skia/XBMImageDecoder.cpp: Added.
  • platform/image-decoders/skia/XBMImageDecoder.h: Added.
11:58 Changeset [40172] by andersca@apple.com
  • 7 edits in trunk/WebKit/mac

2009-01-23 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Turn on -Wmissing-prototypes and fix the resulting warnings.

  • Configurations/Base.xcconfig:
  • History/WebHistory.mm: (timeIntervalForBeginningOfDay):
  • History/WebHistoryItem.mm: (historyItemWrappers):
  • Misc/WebNSPasteboardExtras.mm: (imageFromElement):
  • WebView/WebFrame.mm:
  • WebView/WebScriptDebugger.mm: (toNSString):
11:52 Changeset [40171] by andersca@apple.com
  • 37 edits in trunk/WebCore

2009-01-23 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Turn on -Wmissing-prototypes and fix the resulting warnings.


  • Configurations/Base.xcconfig:
  • bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter):
  • bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): (WebCore::JSLocation::customGetOwnPropertySlot):
  • bindings/objc/DOMRGBColor.mm: (WebCore::getWrapperForRGB): (WebCore::setWrapperForRGB): (WebCore::removeWrapperForRGB):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/c/c_instance.cpp: (JSC::Bindings::globalExceptionString):
  • bridge/runtime_object.cpp: (JSC::callRuntimeConstructor):
  • css/CSSParser.cpp: (WebCore::parseGradientColorStop):
  • css/CSSPrimitiveValue.cpp: (WebCore::scaleFactorForConversion):
  • css/CSSStyleSelector.cpp: (WebCore::operator >): (WebCore::operator <=): (WebCore::getTransformOperationType):
  • dom/make_names.pl:
  • editing/DeleteSelectionCommand.cpp: (WebCore::updatePositionForTextRemoval):
  • editing/EditorCommand.cpp: (WebCore::valueBackColor): (WebCore::valueFontName): (WebCore::valueFontSize): (WebCore::valueFontSizeDelta): (WebCore::valueForeColor):
  • editing/VisiblePosition.cpp: (WebCore::canonicalizeCandidate):
  • editing/htmlediting.cpp:
  • editing/markup.cpp: (WebCore::joinMarkups):
  • html/HTMLElement.cpp: (WebCore::inlineTagList): (WebCore::blockTagList):
  • html/HTMLMediaElement.cpp: (WebCore::serializeTimeOffset): (WebCore::parseTimeOffset):
  • page/mac/FrameMac.mm: (WebCore::regExpForLabels):
  • platform/Arena.cpp:
  • platform/graphics/Color.cpp: (WebCore::colorFloatToRGBAByte):
  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::imageSourceOptions):
  • platform/graphics/cg/PathCG.cpp: (WebCore::CGPathApplierToPathApplier):
  • platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::initFontData):
  • platform/mac/PlatformMouseEventMac.mm:
  • platform/text/String.cpp:
  • rendering/RenderBlock.cpp: (WebCore::continuationOutlineTable): (WebCore::getHeightForLineCount):
  • rendering/RenderView.cpp: (WebCore::rendererAfterPosition):
  • rendering/RootInlineBox.cpp: (WebCore::isEditableLeaf):
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::hasFractions):
  • rendering/style/RenderStyle.cpp: (WebCore::positionedObjectMoved):
  • svg/SVGFont.cpp: (WebCore::floatWidthUsingSVGFontCallback): (WebCore::floatWidthMissingGlyphCallback): (WebCore::drawTextUsingSVGFontCallback): (WebCore::drawTextMissingGlyphCallback):
  • svg/SVGTransformable.cpp: (WebCore::parseTransformParamList):
  • svg/graphics/SVGPaintServerGradient.cpp: (WebCore::operator<<):
  • xml/XPathGrammar.y:
  • xml/XSLTExtensions.cpp:
11:42 Changeset [40170] by eric@webkit.org
  • 5 edits
    2 deletes in trunk/WebCore

No review, removing an empty file.

Remove RemoveNodeAttributeCommand since it was empty.

  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/RemoveNodeAttributeCommand.cpp: Removed.
  • editing/RemoveNodeAttributeCommand.h: Removed.
11:40 Changeset [40169] by andersca@apple.com
  • 10 edits in trunk/JavaScriptCore

2009-01-23 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.


Turn on -Wmissing-prototypes and fix the warnings.


  • API/JSClassRef.cpp: (clearReferenceToPrototype):
  • Configurations/Base.xcconfig:
  • runtime/Collector.cpp: (JSC::getPlatformThreadRegisters):
  • runtime/ExceptionHelpers.cpp: (JSC::createError):
  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSNumberCell.h:
  • runtime/UString.cpp: (JSC::initializeStaticBaseString): (JSC::createRep):
  • wtf/FastMalloc.cpp:
  • wtf/Threading.cpp:
11:16 Changeset [40168] by beidson@apple.com
  • 7 edits
    2 moves in trunk/WebCore

2009-01-23 Brady Eidson <beidson@apple.com>

Rubberstamped by Sam Weinig

Rework ScriptCachedPageData to ScriptCachedFrameData to more accurately reflect its true purpose

  • GNUmakefile.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/ScriptCachedFrameData.cpp: Copied from bindings/js/ScriptCachedPageData.cpp. (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): (WebCore::ScriptCachedFrameData::domWindow): (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData): (WebCore::ScriptCachedFrameData::restore): (WebCore::ScriptCachedFrameData::clear):
  • bindings/js/ScriptCachedFrameData.h: Copied from bindings/js/ScriptCachedPageData.h.
  • bindings/js/ScriptCachedPageData.cpp: Removed.
  • bindings/js/ScriptCachedPageData.h: Removed.
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore):
  • history/CachedPage.h:
11:03 Changeset [40167] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Fix build.

  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::baselinePosition):
10:56 Changeset [40166] by darin@chromium.org
  • 1 edit
    1 copy in trunk/WebCore

2009-01-23 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23506
Copy existing ImageDecoder.h in preparation for landing Skia changes on top.

  • platform/image-decoders/skia/ImageDecoder.h: Copied from platform/image-decoders/ImageDecoder.h.
10:53 Changeset [40165] by darin@chromium.org
  • 1 edit
    8 copies
    1 add in trunk/WebCore

2009-01-23 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23506
Copy existing image-decoders in preparation for landing Skia changes on top.

  • platform/image-decoders/skia: Added.
  • platform/image-decoders/skia/GIFImageDecoder.cpp: Copied from platform/image-decoders/gif/GIFImageDecoder.cpp.
  • platform/image-decoders/skia/GIFImageDecoder.h: Copied from platform/image-decoders/gif/GIFImageDecoder.h.
  • platform/image-decoders/skia/GIFImageReader.cpp: Copied from platform/image-decoders/gif/GIFImageReader.cpp.
  • platform/image-decoders/skia/GIFImageReader.h: Copied from platform/image-decoders/gif/GIFImageReader.h.
  • platform/image-decoders/skia/JPEGImageDecoder.cpp: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.cpp.
  • platform/image-decoders/skia/JPEGImageDecoder.h: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.h.
  • platform/image-decoders/skia/PNGImageDecoder.cpp: Copied from platform/image-decoders/png/PNGImageDecoder.cpp.
  • platform/image-decoders/skia/PNGImageDecoder.h: Copied from platform/image-decoders/png/PNGImageDecoder.h.
09:19 BuildingQtOnLinux edited by kojot350@gmail.com
"Installing dependencies on OpenSUSE Linux" (diff)
08:57 Changeset [40164] by ap@webkit.org
  • 1 edit
    3 adds in trunk/LayoutTests

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=23478
Add a test for application test resource loading failure

  • http/tests/appcache/404-resource-expected.txt: Added.
  • http/tests/appcache/404-resource.html: Added.
  • http/tests/appcache/resources/404-resource.manifest: Added.
08:18 Changeset [40163] by zecke@webkit.org
  • 2 edits in trunk/WebCore

Build fix in RenderThemeGtk for RenderBox usage.

08:07 Changeset [40162] by ap@webkit.org
  • 9 edits in trunk/WebCore

2009-01-23 David Levin <levin@chromium.org>

Reviewed by Alexey Proskuryakov.

Bug 22720: Make XMLHttpRequest work in Workers
<https://bugs.webkit.org/show_bug.cgi?id=22720>

Add copy/adopt for ResourceResponse(Base)/ResourceRequest(Base) to allow the
data to be passed across threads.

No observable change in behavior, so no test.

  • platform/network/FormData.cpp: (WebCore::FormData::deepCopy):
  • platform/network/FormData.h:
  • platform/network/HTTPHeaderMap.cpp: (WebCore::HTTPHeaderMap::copyData): (WebCore::HTTPHeaderMap::adopt):
  • platform/network/HTTPHeaderMap.h:
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::adopt): (WebCore::ResourceRequestBase::copyData):
  • platform/network/ResourceRequestBase.h:
  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::adopt): (WebCore::ResourceResponseBase::copyData):
  • platform/network/ResourceResponseBase.h:
07:53 Changeset [40161] by ap@webkit.org
  • 9 edits
    2 adds in trunk/WebCore

2009-01-23 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=23374
Add WorkerRunLoop to encapsulate message queue and timer heap.
This is first half (timer heap is added as separate patch).

  • GNUmakefile.am: Added WorkerRunLoop.cpp to the build.
  • WebCore.vcproj/WebCore.vcproj: Same as above.
  • WebCore.xcodeproj/project.pbxproj: Same as above
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::postTask):
  • dom/WorkerContext.h:
  • dom/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::postMessageToWorkerContext): (WebCore::WorkerMessagingProxy::workerThreadCreated):
  • dom/WorkerRunLoop.cpp: Added. (WebCore::WorkerRunLoop::run): Runs the loop until terminate() is called. (WebCore::WorkerRunLoop::terminate): Causes the loop to exit. (WebCore::WorkerRunLoop::postTask): Adds a task to the internal queue.
  • dom/WorkerRunLoop.h: Added. (WebCore::WorkerRunLoop::WorkerRunLoop):
  • dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread): (WebCore::WorkerThread::stop):
  • dom/WorkerThread.h: (WebCore::WorkerThread::runLoop):
07:02 Changeset [40160] by treat@webkit.org
  • 2 edits in trunk/WebCore

Redo previous patch http://trac.webkit.org/changeset/34260 which fixes a
huge memory leak by ensuring that the timer is fired one last time on
application tear down thus triggering the GCController thereby freeing
JavaScript objects as well as triggering other timer based tear down methods.

06:50 Changeset [40159] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=23459
Workers are not properly terminated if execution hasn't begun yet

Doesn't affect observable behavior, so test case is not possible.

  • dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread): Call forbidExecution() if it couldn't be called earlier.
05:29 Changeset [40158] by ariya@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon Hausmann.

Make the test more robust by taking into account the platform-specific
cursor flashing time.

  • tests/qwebframe/tst_qwebframe.cpp:
04:39 Changeset [40157] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>

[Qt] Fix the build after RenderBox refactoring in r40153.

  • platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::baselinePosition):
04:39 Changeset [40156] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Alexey Proskuryakov.

Fix the build after RenderBox refactoring in r40153.

  • plugins/PluginView.cpp: (WebCore::PluginView::invalidateWindowlessPluginRect):
04:38 Changeset [40155] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon Hausmann.

[Qt] Simplify the assertion.

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::getWindowsContext): (WebCore::GraphicsContext::releaseWindowsContext):

01/22/09:

23:19 Changeset [40154] by hyatt@apple.com
  • 3 edits in trunk/LayoutTests/platform/mac/fast/forms

Land updated layout tests (progressions) after border/padding move.

23:14 Changeset [40153] by hyatt@apple.com
  • 15 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

Move the border and padding methods from RenderObject to RenderBox.

Reviewed by Oliver Hunt

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::createDeletionUI):
  • page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesVertically):
  • rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::borderLeft): (WebCore::InlineFlowBox::borderRight): (WebCore::InlineFlowBox::paddingLeft): (WebCore::InlineFlowBox::paddingRight):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::clearFloats):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::paddingTop): (WebCore::RenderBox::paddingBottom): (WebCore::RenderBox::paddingLeft): (WebCore::RenderBox::paddingRight): (WebCore::RenderBox::calcHeight): (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteHorizontalValues): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteVerticalValues): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
  • rendering/RenderBox.h: (WebCore::RenderBox::borderTop): (WebCore::RenderBox::borderBottom): (WebCore::RenderBox::borderLeft): (WebCore::RenderBox::borderRight):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
  • rendering/RenderObject.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::textBlockWidth): (WebCore::RenderTextControl::calcHeight): (WebCore::RenderTextControl::calcPrefWidths):
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::preferredContentWidth):
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
  • rendering/RenderView.cpp: (WebCore::RenderView::repaintViewRectangle):
21:13 Changeset [40152] by hyatt@apple.com
  • 16 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

Devirtualize the marginTop/Right/Left/Bottom functions and move them to RenderBox (along with some of the
other margin functions that have to come along for the ride).

Reviewed by Oliver Hunt

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • editing/TextIterator.cpp: (WebCore::shouldEmitExtraNewlineForNode):
  • rendering/InlineBox.cpp:
  • rendering/InlineBox.h: (WebCore::InlineBox::renderBox):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::marginLeft): (WebCore::InlineFlowBox::marginRight): (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::isSelfCollapsingBlock): (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::handleCompactChild): (WebCore::RenderBlock::estimateVerticalPosition): (WebCore::getBorderPaddingMargin): (WebCore::RenderBlock::calcInlinePrefWidths):
  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcHeight):
  • rendering/RenderBox.h: (WebCore::RenderBox::hasHorizontalBordersPaddingOrMargin): (WebCore::RenderBox::hasHorizontalBordersOrPadding): (WebCore::RenderBox::marginTop): (WebCore::RenderBox::marginBottom): (WebCore::RenderBox::marginLeft): (WebCore::RenderBox::marginRight): (WebCore::RenderBox::isSelfCollapsingBlock): (WebCore::RenderBox::collapsedMarginTop): (WebCore::RenderBox::collapsedMarginBottom): (WebCore::RenderBox::isTopMarginQuirk): (WebCore::RenderBox::isBottomMarginQuirk): (WebCore::RenderBox::maxTopMargin): (WebCore::RenderBox::maxBottomMargin):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
  • rendering/RenderObject.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::lineHeight): (WebCore::RenderSVGContainer::baselinePosition):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::calcHeight):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::baselinePosition):
  • rendering/bidi.cpp: (WebCore::getBorderPaddingMargin): (WebCore::inlineWidth): (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::inlineFlowRequiresLineBox): (WebCore::requiresLineBox): (WebCore::RenderBlock::findNextLineBreak):
20:57 Changeset [40151] by mrowe@apple.com
  • 8 edits in trunk

Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.

Rubber-stamped by Anders Carlsson.

Current versions of Xcode only respect it for C and Objective-C files,
and our code doesn't currently compile if it is applied to C++ and
Objective-C++ files.

20:30 Changeset [40150] by hyatt@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderTableSection.cpp

Fix build bustage on Gtk.

20:07 Changeset [40149] by hyatt@apple.com
  • 4 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

Move the m_widthChanged bit on RenderTableCell into RenderFlow's set of bits. Let intrinsicPaddingTop and
intrinsicPaddingBottom just be normal non-bitfield values.

Reviewed by Oliver Hunt

  • rendering/RenderFlow.h: (WebCore::RenderFlow::RenderFlow):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::RenderTableCell): (WebCore::RenderTableCell::updateWidth): (WebCore::RenderTableCell::layout):
  • rendering/RenderTableCell.h:
20:06 Changeset [40148] by hyatt@apple.com
  • 2 edits in trunk/LayoutTests/platform/mac/tables/mozilla/bugs

Update layout tests for table cell changes.

20:05 Changeset [40147] by hyatt@apple.com
  • 2 edits in trunk/LayoutTests/platform/mac/http/tests/misc

Update layout tests for table cell changes.

20:04 Changeset [40146] by hyatt@apple.com
  • 2 edits in trunk/LayoutTests/platform/mac/fast/table

Update layout tests for table cell changes.

20:03 Changeset [40145] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt

Update layout tests for table cell changes.

20:03 Changeset [40144] by hyatt@apple.com
  • 2 edits in trunk/LayoutTests/platform/mac/fast/css

Update layout tests for table cell changes.

19:55 Changeset [40143] by hyatt@apple.com
  • 16 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

Properly encapsulate m_frameRect.y() behind the RenderBox::y() method now that they are the same thing.
Make m_frameRect private.

Reviewed by Oliver Hunt

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paint): (WebCore::RenderBlock::clearFloats):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::offsetTop): (WebCore::RenderBox::nodeAtPoint): (WebCore::RenderBox::paint): (WebCore::RenderBox::paintCustomHighlight): (WebCore::RenderBox::containingBlockWidth): (WebCore::RenderBox::localToAbsolute): (WebCore::RenderBox::offsetFromContainer): (WebCore::RenderBox::computeAbsoluteRepaintRect): (WebCore::RenderBox::repaintDuringLayoutIfMoved):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::layout):
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock):
  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::paint):
  • rendering/RenderImage.cpp: (WebCore::RenderImage::paintReplaced): (WebCore::RenderImage::nodeAtPoint):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::paint): (WebCore::RenderListMarker::getRelativeMarkerRect):
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::paint): (WebCore::RenderReplaced::shouldPaint):
  • rendering/RenderReplica.cpp: (WebCore::RenderReplica::paint):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::applyContentTransforms): (WebCore::RenderSVGRoot::paint): (WebCore::RenderSVGRoot::absoluteTransform): (WebCore::RenderSVGRoot::nodeAtPoint):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::calcWidth): (WebCore::RenderTable::layout):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::paint): (WebCore::RenderTableCell::paintBackgroundsBehindCell):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::setCellWidths): (WebCore::RenderTableSection::calcRowHeight): (WebCore::RenderTableSection::layoutRows): (WebCore::RenderTableSection::paint): (WebCore::RenderTableSection::nodeAtPoint):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::paint):
19:42 Changeset [40142] by hyatt@apple.com
  • 23 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

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

This patch completely reworks vertical alignment of table cells. The current system uses methods called borderTopExtra() and borderBottomExtra() to
add extra space above and below the content of a cell. This system was not confined to the table code and spilled out into all the other RenderObjects.
The y-position of the table cell box was set to the outer edge of the cell, but the y() method of RenderBox lied and added in borderTopExtra(). height()
also excluded the extra space, so did not accurately reflect the true size of the cell.


With the new system, the table cell box is completely accurate. The extra space becomes part of the padding of the cell. Padding has been reworked so that
additional intrinsic padding can be added on to the specified padding from style. Only the table code has to deal with the extra cell padding.

localToAbsoluteForContent has now been removed, since there no longer has to be a special hacked content box.

A number of table layout tests progress with this change, since the new layout system actually fixes existing bugs in baseline alignment of cells.

Reviewed by Oliver Hunt

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Make CSSComputedStyleDeclaration ask for padding values that exclude the built-in intrinsic padding. This ensures that getComputedStyle continues to give the right answer.


  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getLowerRightCorner):
  • editing/visible_units.cpp: (WebCore::previousLinePosition): (WebCore::nextLinePosition):
  • rendering/LayoutState.cpp: (WebCore::LayoutState::LayoutState): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::overflowRect): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
The expandsToEncloseOverhangingFloats logic has been reworked. Table cells and fieldsets did not properly handle floats that spilled into the bottom padding. The
resulting box needed to not only expand to encompass the float, but also needed to place the full bottom padding after the float. The switch to make the extra table cell
space into padding exposed this issue. No extra layout test is required, since an existing table layout test exposes this issue and progresses to match Firefox with
this change.


(WebCore::RenderBlock::selectionGapRects):
(WebCore::RenderBlock::paintSelection):
(WebCore::RenderBlock::fillSelectionGaps):
(WebCore::RenderBlock::nodeAtPoint):
(WebCore::RenderBlock::positionForCoordinates):
(WebCore::RenderBlock::offsetForContents):
Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


  • rendering/RenderBlock.h: Add the new simplified method for expanding to encompass overhanging floats. The method has been devirtualized and made to include all of the cases (and not just a subset).
  • rendering/RenderBox.cpp: (WebCore::RenderBox::absoluteRects): (WebCore::RenderBox::absoluteQuads): (WebCore::RenderBox::absoluteContentBox): (WebCore::RenderBox::paintBoxDecorations): (WebCore::RenderBox::paintMask): (WebCore::RenderBox::getOverflowClipRect): (WebCore::RenderBox::localToAbsolute): (WebCore::RenderBox::absoluteToLocal): (WebCore::RenderBox::localToAbsoluteQuad): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


  • rendering/RenderBox.h: (WebCore::RenderBox::y): (WebCore::RenderBox::location): (WebCore::RenderBox::borderBoxRect): (WebCore::RenderBox::offsetHeight): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::addLineBoxRects):
  • rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::paintBoxDecorations): (WebCore::RenderFieldset::paintMask):
  • rendering/RenderFieldset.h: (WebCore::RenderFieldset::avoidsFloats):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::localCaretRect):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::boundingBox):
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::isPointInOverflowControl):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::localToAbsolute): (WebCore::RenderObject::absoluteToLocal): (WebCore::RenderObject::localToAbsoluteQuad): (WebCore::RenderObject::offsetFromContainer): (WebCore::RenderObject::paddingTop): (WebCore::RenderObject::paddingBottom): (WebCore::RenderObject::paddingLeft): (WebCore::RenderObject::paddingRight):
  • rendering/RenderObject.h: (WebCore::RenderObject::hasOverhangingFloats):
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRect): (WebCore::RenderReplaced::localSelectionRect): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls. Also modifed paddingLeft/Top/Right/Bottom to take an argument indicating whether or not the intrinsic padding of an object should be included (by default it is). getComputedStyle needs to exclude it, which is why this argument is necessary.
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::RenderTableCell): (WebCore::RenderTableCell::paddingTop): (WebCore::RenderTableCell::paddingBottom): The new paddingTop() and paddingBottom() methods on table cells include the extra intrinsic padding.


(WebCore::RenderTableCell::setOverrideSize):
When a table's override size gets altered, the intrinsic padding needs to be cleared.


(WebCore::RenderTableCell::absoluteClippedOverflowRect):
(WebCore::RenderTableCell::computeAbsoluteRepaintRect):
(WebCore::RenderTableCell::baselinePosition):
(WebCore::RenderTableCell::paint):
(WebCore::RenderTableCell::paintBackgroundsBehindCell):
(WebCore::RenderTableCell::paintBoxDecorations):
(WebCore::RenderTableCell::paintMask):
Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


  • rendering/RenderTableCell.h: (WebCore::RenderTableCell::setIntrinsicPaddingTop): (WebCore::RenderTableCell::setIntrinsicPaddingBottom): (WebCore::RenderTableCell::setIntrinsicPadding): (WebCore::RenderTableCell::clearIntrinsicPadding): (WebCore::RenderTableCell::intrinsicPaddingTop): (WebCore::RenderTableCell::intrinsicPaddingBottom): Add new helper methods for getting/setting a cell's intrinsic padding.


  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcRowHeight): calcRowHeight has been modified to exclude the intrinsic padding when calculating the base height of rows prior to flexing. Because a cell now includes that extra space, it has to be subtracted out in this method.


(WebCore::RenderTableSection::layoutRows):
Modify the code that sets up the intrinsic padding so that it does a relayout if the intrinsic padding changes. There was also an error where the baseline
position mismatched leading to negative intrinsic padding being added in (this error exists in ToT). The code now properly ignores cells that don't establish
a baseline. A number of tests progress with this change.


  • rendering/RenderText.cpp: (WebCore::RenderText::addLineBoxRects): Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.


  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<): (WebCore::writeTextRun): Modify the render tree dumping code to continue to produce the same results as before. This is really a hack, since we're now capable of indicating the correct position for the descendants of cells with intrinsic padding (and also indicating what the correct cell box is). A future patch can remove these hacks so that the layout test results can all be regenerated.
18:30 Changeset [40141] by sfalken@apple.com
  • 2 edits in trunk/JavaScriptCore

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


Return currentTime() in correct units for the two early return cases.

Reviewed by Mark Rowe.

  • wtf/CurrentTime.cpp: (WTF::currentTime):
17:01 Changeset [40140] by andersca@apple.com
  • 9 edits in trunk/WebKit/mac

2009-01-22 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add support for Invoke and InvokeDefault. Clean up code.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCBooleanReply):
  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::Reply::): (WebKit::NetscapePluginInstanceProxy::BooleanReply::BooleanReply):
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
  • Plugins/Hosted/ProxyInstance.h:
  • Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyInstance::invoke): (WebKit::ProxyInstance::invokeMethod): (WebKit::ProxyInstance::supportsInvokeDefaultMethod): (WebKit::ProxyInstance::invokeDefaultMethod): (WebKit::ProxyInstance::methodsNamed): (WebKit::ProxyInstance::fieldNamed):
  • Plugins/Hosted/WebKitPluginClient.defs:
  • Plugins/Hosted/WebKitPluginHost.defs:
  • Plugins/Hosted/WebKitPluginHostTypes.h:
16:46 Changeset [40139] by eric@webkit.org
  • 4 edits
    3 adds in trunk

Reviewed by Justin Garcia.

Remove <span> turds left by editing commands
https://bugs.webkit.org/show_bug.cgi?id=23466

Tests:

  • editing/execCommand/empty-span-removal.html
  • editing/execCommand/toggle-styles.html
  • editing/ApplyStyleCommand.cpp: (WebCore::styleSpanClassString): (WebCore::isStyleSpan): (WebCore::isUnstyledStyleSpan): (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan): (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): (WebCore::ApplyStyleCommand::removeCSSStyle):
15:24 Changeset [40138] by andersca@apple.com
  • 2 edits in trunk/WebKitTools

2009-01-22 Anders Carlsson <andersca@apple.com>

Fix Windows build.


  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h:
14:53 Changeset [40137] by zimmermann@webkit.org
  • 13 edits in trunk/WebCore

Reviewed by Eric Seidel.

Rename some of the casting functions in dom/*Element.cpp:
formControlElementForElement -> toFormControlElement
inputElementForElement -> toInputElement
optionElementForElement -> toOptionElement
optionGroupElementForElement -> toOptionGroupElement

Suggested by Alexey, while refactoring the Element*->ScriptElement* code.
The Element*->ScriptElement* helper function is already named 'toScriptElement'.

14:48 Changeset [40136] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-22 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Fix for <rdar://problem/6439247>
FastMalloc allocating an extra 4MB of meta-data on 64-bit

Rely on the fact that on all known x86-64 platforms only use 48 bits of
address space to shrink the initial size of the PageMap from ~4MB to 120K.
For 64-bit we still use a 3-level radix tree, but now each level is only 12
bits wide.

No performance change.

  • wtf/FastMalloc.cpp: (WTF::MapSelector): Add specialization for 64 bit that takes into account the 16 bits of unused address space on x86-64.
14:24 Changeset [40135] by zimmermann@webkit.org
  • 3 edits in trunk/WebCore

Rubber-stamped by George Staikos.
Forgot to include in my last commit: Activate code depending on WMLOptionElement/WMLOptGroupElement.

14:04 Changeset [40134] by zimmermann@webkit.org
  • 6 edits
    4 adds in trunk/WebCore

Reviewed by George Staikos.

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

Add WML <option>/<optgroup> element support.
Currently the implementation is stubbed, all relevant parts can be enabled
once WMLSelectElement/SelectElement has been created.

13:51 Changeset [40133] by bdakin@apple.com
  • 5 edits in trunk

JavaScriptCore:

2009-01-22 Beth Dakin <bdakin@apple.com>

Reviewed by Sam Weinig.

Fix for https://bugs.webkit.org/show_bug.cgi?id=23461 LayoutTests/
fast/js/numeric-conversion.html is broken, and corresponding
<rdar://problem/6514842>

The basic problem here is that parseInt(Infinity) should be NaN,
but we were returning 0. NaN matches Safari 3.2.1 and Firefox.

  • runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncParseInt):

LayoutTests:

2009-01-22 Beth Dakin <bdakin@apple.com>

Reviewed by Sam Weinig.

Fix for https://bugs.webkit.org/show_bug.cgi?id=23461 LayoutTests/
fast/js/numeric-conversion.html is broken, and corresponding
<rdar://problem/6514842>

The basic problem here is that parseInt(Infinity) should be NaN,
but we were returning 0. NaN matches Safari 3.2.1 and Firefox.

  • fast/js/numeric-conversion-expected.txt:
  • fast/js/resources/numeric-conversion.js:
13:16 Changeset [40132] by dglazkov@chromium.org
  • 11 edits
    3 adds in trunk

WebCore:

2009-01-22 Eric Roman <eroman@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=20806
Send referrer for history navigations.

Test: http/tests/navigation/back-send-referrer.html

Consolidates HistoryItem::rssFeedReferrer and HistoryItem::formReferrer into a single HistoryItem::referrer property.

  • history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem): (WebCore::HistoryItem::referrer): (WebCore::HistoryItem::setReferrer): (WebCore::HistoryItem::formReferrer): (WebCore::HistoryItem::rssFeedReferrer): (WebCore::HistoryItem::setRSSFeedReferrer): (WebCore::HistoryItem::setFormInfoFromRequest):
  • history/HistoryItem.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadItem):

WebKit/win:

2009-01-22 Eric Roman <eroman@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=20806
Deprecate RSSFeedReferrer() and setRSSFeedReferrer().

  • WebHistoryItem.cpp: (WebHistoryItem::RSSFeedReferrer): (WebHistoryItem::setRSSFeedReferrer):

WebKit/mac:

2009-01-22 Eric Roman <eroman@chromium.og>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=20806
Deprecate RSSFeedReferrer() and setRSSFeedReferrer().

  • History/WebHistoryItem.mm: (-[WebHistoryItem RSSFeedReferrer]): (-[WebHistoryItem setRSSFeedReferrer:]):

LayoutTests:

2009-01-22 Eric Roman <eroman@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=20806
"Referer" header not sent for history navigation.

  • http/tests/navigation/back-send-referrer-expected.txt: Added.
  • http/tests/navigation/back-send-referrer.html: Added.
  • http/tests/navigation/resources/back-send-referrer-helper.php: Added.
13:07 Changeset [40131] by oliver@apple.com
  • 7 edits in trunk

<rdar://problem/6516853> (r39682-r39736) JSFunFuzz: crash on "(function(){({ x2: x }), })()"
<https://bugs.webkit.org/show_bug.cgi?id=23479>

Reviewed by Geoff Garen.

Automatic semicolon insertion was resulting in this being accepted in the initial
nodeless parsing, but subsequent reparsing for code generation would fail, leading
to a crash. The solution is to ensure that reparsing a function performs parsing
in the same state as the initial parse. We do this by modifying the saved source
ranges to include rather than exclude the opening and closing braces.

12:40 Changeset [40130] by zimmermann@webkit.org
  • 8 edits in trunk/WebCore

Reviewed by Eric Seidel.

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

Further enhancments to share code between HTMLOptionElement and the upcoming WMLOptionElement.

Rename optionText() to textIndentedToRespectGroupLabel() in (HTML)OptionElement, as it fits better.
optionText() returns the options text prefixed with some spaces, in case it got an optgroup parent.

Add two more pure-virtual functions to OptionElement: setSelectedState(bool) & value().
These aren't used outside of html/ at the moment (unlike the other pure-virtual functions
used by RenderMenuList/RenderListBox) - but they will be used by SelectElement, once it exists.

12:30 Changeset [40129] by cfleizach@apple.com
  • 2 edits in trunk/WebCore

2009-01-22 Chris Fleizach <cfleizach@apple.com>

Reviewed by Justin Garcia.

Bug 23464: Infinite recursion at SelectionController::setSelection
https://bugs.webkit.org/show_bug.cgi?id=23464

Check for conditions leading to infinite recursion.

  • editing/SelectionController.cpp: (WebCore::SelectionController::setSelection):
12:12 Changeset [40128] by andersca@apple.com
  • 3 edits in trunk/WebKitTools

2009-01-22 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.


Clean up the test plug-in code. We now always use the CG drawing model and the
Cocoa event model. It is however possible to revert to the old Carbon event model by
specifying forcecarbon=true in the embed/object tag.


  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h:
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (handleEventCarbon): (handleEventCocoa): (NPP_HandleEvent):
11:06 Changeset [40127] by andersca@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-22 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.

Don't crash or hang when we fail to instantiate a plug-in.


  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::instantiatePlugin): Return 0 on failure.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView JSC::Bindings::createPluginBindingsInstance:JSC::Bindings::]): Null check for the proxy member.
10:55 Changeset [40126] by zimmermann@webkit.org
  • 2 edits in trunk/WebCore

Not reviewed. Fix WML build problem in RenderBox.cpp, WMLNames is undefined.

07:29 Changeset [40125] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build after RenderBox changes.

01:41 Changeset [40124] by hyatt@apple.com
  • 3 edits in trunk/WebCore

2009-01-22 David Hyatt <hyatt@apple.com>

Fix regressions in list box selection on Mac. The wrong color was being used for the list box
background, and list box colors actually weren't even being properly fetched because of a bug in
the RenderTheme base class. Existing pixel tests cover the bug fix.

Reviewed by Jon Honeycutt

  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor): (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor): (WebCore::RenderTheme::activeListBoxSelectionForegroundColor): (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
00:58 Changeset [40123] by ap@webkit.org
  • 8 edits
    1 add in trunk/WebCore

2009-01-22 David Levin <levin@chromium.org>

Reviewed by Alexey Proskuryakov.

Bug 22720: Make XMLHttpRequest work in Workers
<https://bugs.webkit.org/show_bug.cgi?id=22720>

Add copy/adopt for HTTPHeaderMap to allow the data to be passed across threads.

No observable change in behavior, so no test.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • platform/network/HTTPHeaderMap.cpp: Added. (WebCore::HTTPHeaderMap::copyData): (WebCore::HTTPHeaderMap::adopt):
  • platform/network/HTTPHeaderMap.h:
00:32 Changeset [40122] by ap@webkit.org
  • 3 edits
    1 add in trunk/JavaScriptCore

2009-01-22 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov.

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

Implement ThreadCondition::timedWait().
Since we borrow the code for condition variables from other sources,
I did the same for timedWait(). See comments in ThreadingWin.cpp for
rationale and more info.

  • wtf/CONTRIBUTORS.pthreads-win32: Added. A list of Pthreads-win32 contributors mentioned in their license. The license itself is included into wtf/ThreadingWin32.cpp.
  • wtf/Threading.h:
  • wtf/ThreadingWin.cpp: Additional info and Pthreads-win32 license at the beginning. (WTF::PlatformCondition::timedWait): new method, derived from Pthreads-win32. (WTF::PlatformCondition::signal): same (WTF::ThreadCondition::ThreadCondition): (WTF::ThreadCondition::~ThreadCondition): (WTF::ThreadCondition::wait): this now calls PlatformCondition::timedWait. (WTF::ThreadCondition::timedWait): same (WTF::ThreadCondition::signal): this now calls PlatformCondition::signal. (WTF::ThreadCondition::broadcast): same
00:15 Changeset [40121] by hyatt@apple.com
  • 2 edits in trunk/WebCore/wml

Fix build bustage in WML from RenderBox changes.

00:12 Changeset [40120] by hyatt@apple.com
  • 1 edit in trunk/WebCore/platform/gtk/RenderThemeGtk.cpp

Fix Gtk build bustage.

00:11 Changeset [40119] by hyatt@apple.com
  • 1 edit in trunk/WebCore/platform/qt/RenderThemeQt.cpp

Fix Qt build bustage.

01/21/09:

23:54 Changeset [40118] by hyatt@apple.com
  • 5 edits in trunk/WebCore

2009-01-21 David Hyatt <hyatt@apple.com>

Back out a portion of my patch that I did not mean to land. Revert paintOutline back to the way it
was before my landing. Fixes failing SVG focus ring tests.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintOutline):
  • rendering/RenderObject.h:
  • rendering/RenderPath.cpp: (WebCore::RenderPath::paint):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::paint):
23:19 Changeset [40117] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-21 David Hyatt <hyatt@apple.com>

Fix Node's renderBox() method on Windows.

  • dom/Node.cpp: (WebCore::Node::renderBox):
23:05 Changeset [40116] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-21 David Hyatt <hyatt@apple.com>

Fix RenderThemeSafari bustage on Win32.

  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::baselinePosition):
22:58 Changeset [40115] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-21 David Hyatt <hyatt@apple.com>

Fix bustage in RenderThemeWin. It's actually terrible that RenderThemeWin is using absoluteContentBox,
but that's a problem for another day.

  • rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintSearchFieldCancelButton): (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration): (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
21:59 Changeset [40114] by barraclough@apple.com
  • 1 edit in trunk/LayoutTests/ChangeLog

Because bdash hates freedom (tyop fix).

21:57 Changeset [40113] by barraclough@apple.com
  • 1 edit
    2 copies in trunk/LayoutTests

2009-01-21 Gavin Barraclough <barraclough@apple.com>

Rubber stamped by Geoff "Cameron Zwarich" Garen.

Add pre & post standalone driver stcripts to assist running the javascript layout tests
on jsc, rather than a full webkit build.

  • fast/js/resources/standalone-post.js: Copied from fast/js/resources/js-test-post.js.
  • fast/js/resources/standalone-pre.js: Copied from fast/js/resources/js-test-pre.js. (description): (debug): (escapeString): (testPassed): (testFailed):
21:48 Changeset [40112] by oliver@apple.com
  • 2 edits in trunk/WebCore

Bug 23470: Crash when page load occurs while processing scroll event with MallocScribble enabled
<https://bugs.webkit.org/show_bug.cgi?id=23470>

Reviewed by Dave Hyatt

Add a RefPtr protector to handleWheelEvent to guard against destruction
while processing the scroll event. Alas the absurd set of circumstances
required to trigger this do not appear to be reproducible in DRT.

20:28 Changeset [40111] by barraclough@apple.com
  • 5 edits in trunk

JavaScriptCore:

2009-01-21 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

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

We need to check all numbers in integer switches, not just those
represented as integer JSImmediates.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute): (JSC::Interpreter::cti_op_switch_imm):

LayoutTests:

2009-01-21 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Add layout test for switch (-0).

  • fast/js/resources/switch-behaviour.js:
  • fast/js/switch-behaviour-expected.txt:
19:48 Changeset [40110] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

19:44 Changeset [40109] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

19:35 Changeset [40108] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-21 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoff Garen.

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

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
18:31 Changeset [40107] by hyatt@apple.com
  • 101 edits in trunk

WebCore:

2009-01-21 David Hyatt <hyatt@apple.com>

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

Devirtualize the width/height/x/y methods of the render tree. The methods are now non-virtual on RenderBox.
Many functions that were previously in RenderObject.cpp are now in RenderBox.cpp.

Reviewed by Eric Seidel and Darin Adler

  • WebCore.base.exp:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::sizingBox):
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getUpperLeftCorner): (WebCore::ContainerNode::getLowerRightCorner):
  • dom/Element.cpp: (WebCore::Element::offsetLeft): (WebCore::Element::offsetTop): (WebCore::Element::offsetWidth): (WebCore::Element::offsetHeight): (WebCore::Element::offsetParent): (WebCore::Element::clientLeft): (WebCore::Element::clientTop): (WebCore::Element::clientWidth): (WebCore::Element::clientHeight): (WebCore::Element::scrollLeft): (WebCore::Element::scrollTop): (WebCore::Element::setScrollLeft): (WebCore::Element::setScrollTop): (WebCore::Element::scrollWidth): (WebCore::Element::scrollHeight):
  • dom/Node.cpp: (WebCore::Node::renderBox): (WebCore::Node::getRect):
  • dom/Node.h:
  • dom/Position.cpp: (WebCore::endsOfNodeAreVisuallyDistinctPositions): (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): (WebCore::Position::isCandidate):
  • dom/PositionIterator.cpp: (WebCore::PositionIterator::isCandidate):
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
  • editing/DeleteButtonController.cpp: (WebCore::isDeletableElement):
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::removeNode):
  • editing/Editor.cpp: (WebCore::Editor::insideVisibleArea):
  • editing/EditorCommand.cpp: (WebCore::verticalScrollDistance):
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isKeyboardFocusable):
  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::willDraw):
  • html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::isFocusable):
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::width): (WebCore::HTMLFrameElementBase::height):
  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::width): (WebCore::HTMLImageElement::height):
  • inspector/InspectorController.cpp: (WebCore::InspectorController::drawNodeHighlight):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
  • page/FrameView.cpp: (WebCore::FrameView::createScrollbar): (WebCore::FrameView::updateDashboardRegions):
  • page/animation/AnimationBase.cpp: (WebCore::blendFunc):
  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::imageRect):
  • rendering/InlineBox.cpp: (WebCore::InlineBox::renderBox): (WebCore::InlineBox::adjustPosition):
  • rendering/InlineBox.h:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::verticallyAlignBoxes): (WebCore::InlineFlowBox::placeBoxesVertically):
  • rendering/InlineFlowBox.h:
  • rendering/RenderApplet.cpp: (WebCore::RenderApplet::createWidgetIfNecessary):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::overflowHeight): (WebCore::RenderBlock::overflowWidth): (WebCore::RenderBlock::overflowRect): (WebCore::RenderBlock::isSelfCollapsingBlock): (WebCore::RenderBlock::layout): (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::adjustFloatingBlock): (WebCore::RenderBlock::handleSpecialChild): (WebCore::RenderBlock::handlePositionedChild): (WebCore::RenderBlock::handleFloatingChild): (WebCore::RenderBlock::handleCompactChild): (WebCore::RenderBlock::insertCompactIfNeeded): (WebCore::RenderBlock::handleRunInChild): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::estimateVerticalPosition): (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::handleBottomOfBlock): (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::layoutOnlyPositionedObjects): (WebCore::RenderBlock::layoutPositionedObjects): (WebCore::RenderBlock::markPositionedObjectsForLayout): (WebCore::RenderBlock::repaintOverhangingFloats): (WebCore::RenderBlock::paint): (WebCore::RenderBlock::paintChildren): (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::paintFloats): (WebCore::RenderBlock::paintContinuationOutlines): (WebCore::clipOutPositionedObjects): (WebCore::RenderBlock::fillSelectionGaps): (WebCore::RenderBlock::fillBlockSelectionGaps): (WebCore::RenderBlock::leftSelectionOffset): (WebCore::RenderBlock::rightSelectionOffset): (WebCore::RenderBlock::insertPositionedObject): (WebCore::RenderBlock::removePositionedObject): (WebCore::RenderBlock::removePositionedObjects): (WebCore::RenderBlock::insertFloatingObject): (WebCore::RenderBlock::removeFloatingObject): (WebCore::RenderBlock::positionNewFloats): (WebCore::RenderBlock::newLine): (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition): (WebCore::RenderBlock::clearFloats): (WebCore::RenderBlock::addOverhangingFloats): (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): (WebCore::RenderBlock::getClearDelta): (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::positionForCoordinates): (WebCore::RenderBlock::layoutColumns): (WebCore::RenderBlock::getBaselineOfFirstLineBox): (WebCore::RenderBlock::getBaselineOfLastLineBox): (WebCore::getHeightForLineCount): (WebCore::RenderBlock::adjustForBorderFit):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::FloatWithRect::FloatWithRect): (WebCore::RenderBlock::hasOverhangingFloats): (WebCore::RenderBlock::CompactInfo::compact): (WebCore::RenderBlock::CompactInfo::set):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::RenderBox): (WebCore::RenderBox::offsetLeft): (WebCore::RenderBox::offsetTop): (WebCore::RenderBox::offsetParent): (WebCore::RenderBox::clientWidth): (WebCore::RenderBox::clientHeight): (WebCore::RenderBox::scrollWidth): (WebCore::RenderBox::scrollHeight): (WebCore::RenderBox::scrollLeft): (WebCore::RenderBox::scrollTop): (WebCore::RenderBox::setScrollLeft): (WebCore::RenderBox::setScrollTop): (WebCore::RenderBox::absoluteRects): (WebCore::RenderBox::absoluteQuads): (WebCore::RenderBox::absoluteContentBox): (WebCore::RenderBox::absoluteContentQuad): (WebCore::RenderBox::absoluteOutlineBounds): (WebCore::RenderBox::addFocusRingRects): (WebCore::RenderBox::reflectionBox): (WebCore::RenderBox::reflectionOffset): (WebCore::RenderBox::reflectedRect): (WebCore::RenderBox::overrideWidth): (WebCore::RenderBox::overrideHeight): (WebCore::RenderBox::nodeAtPoint): (WebCore::RenderBox::paint): (WebCore::RenderBox::maskClipRect): (WebCore::RenderBox::repaintLayerRectsForImage): (WebCore::RenderBox::paintCustomHighlight): (WebCore::RenderBox::getOverflowClipRect): (WebCore::RenderBox::getClipRect): (WebCore::RenderBox::containingBlockWidth): (WebCore::RenderBox::localToAbsolute): (WebCore::RenderBox::offsetFromContainer): (WebCore::RenderBox::position): (WebCore::RenderBox::computeAbsoluteRepaintRect): (WebCore::RenderBox::repaintDuringLayoutIfMoved): (WebCore::RenderBox::calcWidth): (WebCore::RenderBox::calcWidthUsing): (WebCore::RenderBox::calcHorizontalMargins): (WebCore::RenderBox::calcHeight): (WebCore::RenderBox::calcPercentageHeight): (WebCore::RenderBox::calcReplacedHeightUsing): (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontal): (WebCore::RenderBox::calcAbsoluteVertical): (WebCore::RenderBox::calcAbsoluteVerticalValues): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): (WebCore::RenderBox::calcAbsoluteVerticalReplaced): (WebCore::RenderBox::localCaretRect): (WebCore::RenderBox::lowestPosition): (WebCore::RenderBox::rightmostPosition): (WebCore::RenderBox::leftmostPosition): (WebCore::RenderBox::localTransform):
  • rendering/RenderBox.h: (WebCore::): (WebCore::RenderBox::x): (WebCore::RenderBox::y): (WebCore::RenderBox::width): (WebCore::RenderBox::height): (WebCore::RenderBox::setX): (WebCore::RenderBox::setY): (WebCore::RenderBox::setWidth): (WebCore::RenderBox::setHeight): (WebCore::RenderBox::location): (WebCore::RenderBox::size): (WebCore::RenderBox::setLocation): (WebCore::RenderBox::setSize): (WebCore::RenderBox::move): (WebCore::RenderBox::frameRect): (WebCore::RenderBox::setFrameRect): (WebCore::RenderBox::borderBoxRect): (WebCore::RenderBox::contentBoxRect): (WebCore::RenderBox::previousSiblingBox): (WebCore::RenderBox::nextSiblingBox): (WebCore::RenderBox::parentBox): (WebCore::RenderBox::overflowHeight): (WebCore::RenderBox::overflowWidth): (WebCore::RenderBox::setOverflowHeight): (WebCore::RenderBox::setOverflowWidth): (WebCore::RenderBox::overflowLeft): (WebCore::RenderBox::overflowTop): (WebCore::RenderBox::overflowRect): (WebCore::RenderBox::contentWidth): (WebCore::RenderBox::contentHeight): (WebCore::RenderBox::offsetWidth): (WebCore::RenderBox::offsetHeight): (WebCore::RenderBox::clientLeft): (WebCore::RenderBox::clientTop): (WebCore::RenderBox::availableWidth): (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
  • rendering/RenderButton.cpp: (WebCore::RenderButton::controlClipRect):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::layout): (WebCore::RenderContainer::positionForCoordinates):
  • rendering/RenderContainer.h: (WebCore::RenderContainer::firstChildBox): (WebCore::RenderContainer::lastChildBox):
  • rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::calcPrefWidths): (WebCore::RenderFieldset::layoutLegend): (WebCore::RenderFieldset::findLegend): (WebCore::RenderFieldset::paintBoxDecorations): (WebCore::RenderFieldset::paintMask):
  • rendering/RenderFieldset.h:
  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::maxFilenameWidth): (WebCore::RenderFileUploadControl::paintObject):
  • rendering/RenderFlexibleBox.cpp: (WebCore::FlexBoxIterator::FlexBoxIterator): (WebCore::FlexBoxIterator::first): (WebCore::FlexBoxIterator::next): (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths): (WebCore::RenderFlexibleBox::calcVerticalPrefWidths): (WebCore::RenderFlexibleBox::layoutBlock): (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox): (WebCore::RenderFlexibleBox::placeChild): (WebCore::RenderFlexibleBox::allowedChildFlex):
  • rendering/RenderFlexibleBox.h:
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::absoluteClippedOverflowRect): (WebCore::RenderFlow::lowestPosition): (WebCore::RenderFlow::rightmostPosition): (WebCore::RenderFlow::leftmostPosition): (WebCore::RenderFlow::localCaretRect): (WebCore::RenderFlow::addFocusRingRects):
  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::paint): (WebCore::RenderFrameSet::layout): (WebCore::RenderFrameSet::positionFrames):
  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paintReplaced): (WebCore::RenderHTMLCanvas::canvasSizeChanged):
  • rendering/RenderImage.cpp: (WebCore::RenderImage::imageChanged): (WebCore::RenderImage::paintReplaced): (WebCore::RenderImage::nodeAtPoint): (WebCore::RenderImage::calcReplacedWidth):
  • rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): (WebCore::RenderInline::boundingBoxWidth): (WebCore::RenderInline::boundingBoxHeight): (WebCore::RenderInline::positionForCoordinates):
  • rendering/RenderInline.h: (WebCore::RenderInline::offsetWidth): (WebCore::RenderInline::offsetHeight):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateTransform): (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::scrollbarCornerPresent): (WebCore::RenderLayer::createScrollbar): (WebCore::RenderLayer::positionOverflowControls): (WebCore::RenderLayer::paintScrollCorner): (WebCore::RenderLayer::paintResizer): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::calculateRects): (WebCore::RenderLayer::boundingBox):
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): (WebCore::RenderListBox::controlClipRect):
  • rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): (WebCore::RenderListItem::paint):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::paint): (WebCore::RenderListMarker::layout): (WebCore::RenderListMarker::imageChanged): (WebCore::RenderListMarker::getRelativeMarkerRect): (WebCore::RenderListMarker::selectionRect):
  • rendering/RenderMarquee.cpp: (WebCore::RenderMarquee::computePosition):
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::layout): (WebCore::RenderMedia::lowestPosition): (WebCore::RenderMedia::rightmostPosition): (WebCore::RenderMedia::leftmostPosition):
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::controlClipRect):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::markAllDescendantsWithFloatsForLayout): (WebCore::RenderObject::paintOutline): (WebCore::RenderObject::addLineBoxRects): (WebCore::RenderObject::absoluteBoundingBoxRect): (WebCore::RenderObject::addAbsoluteRectForLayer): (WebCore::RenderObject::paintingRootRect): (WebCore::RenderObject::container): (WebCore::RenderObject::removeFromObjectLists): (WebCore::RenderObject::updateHitTestResult): (WebCore::RenderObject::addDashboardRegions): (WebCore::RenderObject::localTransform):
  • rendering/RenderObject.h: (WebCore::RenderObject::isBox): (WebCore::RenderObject::hasMask): (WebCore::RenderObject::setIsText): (WebCore::RenderObject::setIsBox): (WebCore::RenderObject::borderTop): (WebCore::RenderObject::borderBottom): (WebCore::RenderObject::absoluteRects): (WebCore::RenderObject::collectAbsoluteLineBoxQuads): (WebCore::RenderObject::absoluteQuads): (WebCore::RenderObject::hasReflection): (WebCore::RenderObject::addFocusRingRects): (WebCore::RenderObject::absoluteOutlineBounds):
  • rendering/RenderPart.cpp: (WebCore::RenderPart::updateWidgetPosition):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::layout): (WebCore::RenderPath::paint): (WebCore::RenderPath::absoluteOutlineBounds):
  • rendering/RenderPath.h:
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::layout): (WebCore::RenderReplaced::paint): (WebCore::RenderReplaced::shouldPaint): (WebCore::RenderReplaced::positionForCoordinates): (WebCore::RenderReplaced::localSelectionRect): (WebCore::RenderReplaced::adjustOverflowForBoxShadow): (WebCore::RenderReplaced::overflowRect):
  • rendering/RenderReplica.cpp: (WebCore::RenderReplica::layout): (WebCore::RenderReplica::calcPrefWidths): (WebCore::RenderReplica::paint):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::paint): (WebCore::RenderSVGContainer::absoluteOutlineBounds):
  • rendering/RenderSVGContainer.h: (WebCore::RenderSVGContainer::width): (WebCore::RenderSVGContainer::height):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::layout):
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange): (WebCore::RenderSVGInlineText::positionForCoordinates):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): (WebCore::RenderSVGRoot::applyContentTransforms): (WebCore::RenderSVGRoot::paint): (WebCore::RenderSVGRoot::absoluteTransform): (WebCore::RenderSVGRoot::nodeAtPoint):
  • rendering/RenderSVGTSpan.cpp: (WebCore::RenderSVGTSpan::absoluteRects): (WebCore::RenderSVGTSpan::absoluteQuads):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout): (WebCore::RenderSVGText::relativeBBox):
  • rendering/RenderSVGTextPath.cpp: (WebCore::RenderSVGTextPath::absoluteRects): (WebCore::RenderSVGTextPath::absoluteQuads):
  • rendering/RenderSVGViewportContainer.cpp: (WebCore::RenderSVGViewportContainer::nodeAtPoint):
  • rendering/RenderScrollbar.cpp: (WebCore::RenderScrollbar::createCustomScrollbar): (WebCore::RenderScrollbar::RenderScrollbar): (WebCore::RenderScrollbar::setParent):
  • rendering/RenderScrollbar.h: (WebCore::RenderScrollbar::owningRenderer):
  • rendering/RenderScrollbarPart.cpp: (WebCore::RenderScrollbarPart::layout): (WebCore::RenderScrollbarPart::layoutHorizontalPart): (WebCore::RenderScrollbarPart::layoutVerticalPart): (WebCore::RenderScrollbarPart::computeScrollbarWidth): (WebCore::RenderScrollbarPart::computeScrollbarHeight): (WebCore::RenderScrollbarPart::paintIntoRect):
  • rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler): (WebCore::RenderSlider::layout): (WebCore::RenderSlider::mouseEventIsInThumb): (WebCore::RenderSlider::positionForOffset): (WebCore::RenderSlider::trackSize):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::calcWidth): (WebCore::RenderTable::layout): (WebCore::RenderTable::paint): (WebCore::RenderTable::getBaselineOfFirstLineBox):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::updateWidth): (WebCore::RenderTableCell::computeAbsoluteRepaintRect): (WebCore::RenderTableCell::localToAbsolute): (WebCore::RenderTableCell::absoluteToLocal): (WebCore::RenderTableCell::localToAbsoluteQuad): (WebCore::RenderTableCell::paint): (WebCore::RenderTableCell::paintBackgroundsBehindCell):
  • rendering/RenderTableCell.h:
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addChild): (WebCore::RenderTableSection::addCell): (WebCore::RenderTableSection::setCellWidths): (WebCore::RenderTableSection::calcRowHeight): (WebCore::RenderTableSection::layoutRows): (WebCore::RenderTableSection::lowestPosition): (WebCore::RenderTableSection::rightmostPosition): (WebCore::RenderTableSection::leftmostPosition): (WebCore::RenderTableSection::getBaselineOfFirstLineBox): (WebCore::RenderTableSection::paint): (WebCore::RenderTableSection::recalcCells): (WebCore::RenderTableSection::nodeAtPoint):
  • rendering/RenderTableSection.h: (WebCore::RenderTableSection::overflowWidth): (WebCore::RenderTableSection::overflowHeight):
  • rendering/RenderText.cpp: (WebCore::RenderText::RenderText): (WebCore::RenderText::boundingBoxX): (WebCore::RenderText::boundingBoxY): (WebCore::RenderText::firstRunX): (WebCore::RenderText::firstRunY): (WebCore::RenderText::boundingBoxHeight): (WebCore::RenderText::boundingBoxWidth):
  • rendering/RenderText.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::textBlockHeight): (WebCore::RenderTextControl::textBlockWidth): (WebCore::RenderTextControl::setSelectionRange): (WebCore::RenderTextControl::calcHeight): (WebCore::RenderTextControl::hitInnerTextBlock): (WebCore::RenderTextControl::controlClipRect):
  • rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::layout): (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::paint): (WebCore::RenderTextControlSingleLine::layout): (WebCore::RenderTextControlSingleLine::nodeAtPoint): (WebCore::RenderTextControlSingleLine::forwardEvent): (WebCore::RenderTextControlSingleLine::textBlockWidth): (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): (WebCore::RenderTextControlSingleLine::clientPaddingLeft): (WebCore::RenderTextControlSingleLine::clientPaddingRight):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::hitTestMediaControlPart): (WebCore::RenderTheme::baselinePosition):
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintSearchFieldCancelButton): (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): (WebCore::RenderThemeMac::paintSearchFieldResultsButton): (WebCore::RenderThemeMac::hitTestMediaControlPart):
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::videoBox):
  • rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::RenderView::calcHeight): (WebCore::RenderView::calcWidth): (WebCore::RenderView::layout): (WebCore::RenderView::viewRect): (WebCore::RenderView::docHeight): (WebCore::RenderView::docWidth): (WebCore::RenderView::setBestTruncatedAt):
  • rendering/RenderView.h:
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::paint): (WebCore::RenderWidget::updateWidgetPosition): (WebCore::RenderWidget::nodeAtPoint):
  • rendering/RootInlineBox.h: (WebCore::RootInlineBox::floats): (WebCore::RootInlineBox::floatsPtr):
  • rendering/SVGInlineFlowBox.cpp: (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
  • rendering/SVGInlineFlowBox.h:
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::operator<<): (WebCore::write):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBox::verticallyAlignBoxes): (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): (WebCore::SVGRootInlineBox::layoutInlineBoxes):
  • rendering/SVGRootInlineBox.h:
  • rendering/bidi.cpp: (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::computeVerticalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::determineStartPosition): (WebCore::RenderBlock::matchedEndLine): (WebCore::RenderBlock::skipTrailingWhitespace): (WebCore::RenderBlock::skipLeadingWhitespace): (WebCore::RenderBlock::fitBelowFloats): (WebCore::RenderBlock::findNextLineBreak): (WebCore::RenderBlock::checkLinesForOverflow):
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport):

WebKit/mac:

2009-01-21 David Hyatt <hyatt@apple.com>

Devirtualize width/height/x/y on RenderObject and move the methods to RenderBox.

Reviewed by Eric Seidel and Darin Adler

  • WebView/WebRenderNode.mm: (copyRenderNode):
17:39 Changeset [40106] by andersca@apple.com
  • 8 edits in trunk/WebKit/mac

2009-01-21 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

More browser->plug-in scripting support.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCNPObjectHasPropertyReply): (WKPCNPObjectHasMethodReply): (WKPCNPObjectInvokeReply): MIG reply functions.


(WKPCIdentifierInfo):
Return information about an identifier given its 64-bit value.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h: Add new reply structs.


  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::addValueToArray): Split out code that adds values to the arrays from marshalValue.


(WebKit::NetscapePluginInstanceProxy::marshalValue):
Call addValueToArray.


(WebKit::NetscapePluginInstanceProxy::marshalValues):
Marshal a list of values.


(WebKit::NetscapePluginInstanceProxy::createBindingsInstance):
Actually create a proxy instance.


  • Plugins/Hosted/ProxyInstance.h:
  • Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyClass::methodsNamed): (WebKit::ProxyClass::fieldNamed): Add a proxy ProxyClass class that just forwards everything to the ProxyInstance class.


(WebKit::proxyClass):
Shared proxyClass getter.


(WebKit::ProxyField::ProxyField):
(WebKit::ProxyField::valueFromInstance):
(WebKit::ProxyField::setValueToInstance):
Add a proxy ProxyField class that just forwards everything to the ProxyInstance class.


(WebKit::ProxyMethod::ProxyMethod):
(WebKit::ProxyMethod::serverIdentifier):
(WebKit::ProxyMethod::numParameters):
Add a dummy ProxyMethod class.


(WebKit::ProxyInstance::invokeMethod):
Call _WKPHNPObjectInvoke.


(WebKit::ProxyInstance::defaultValue):
(WebKit::ProxyInstance::stringValue):
(WebKit::ProxyInstance::numberValue):
(WebKit::ProxyInstance::booleanValue):
(WebKit::ProxyInstance::valueOf):
Add dummy implementations (taken from CInstance).


(WebKit::ProxyInstance::methodsNamed):
Call _WKPHNPObjectHasMethod to determine whether a method with the given name exists.


(WebKit::ProxyInstance::fieldNamed):
Call _WKPHNPObjectHasProperty to determine whether a property with the given name exists.


  • Plugins/Hosted/WebKitPluginClient.defs:
  • Plugins/Hosted/WebKitPluginHost.defs: Add new MIG definitions.
17:39 Changeset [40105] by pol@apple.com
  • 2 edits in trunk/WebKitTools

2009-01-21 Pierre-Olivier Latour <pol@apple.com>

Tweaked earlier fix to only print a warning when Perian is installed,
and fail completely only if attempting to generate new pixel test results.

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

  • Scripts/run-webkit-tests:
16:50 Changeset [40104] by andersca@apple.com
  • 3 edits in trunk/WebCore

2009-01-21 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

  • WebCore.LP64.exp: Add some bridge related symbols.


  • WebCore.xcodeproj/project.pbxproj: Make runtime_object.h a private header.
16:22 Changeset [40103] by oliver@apple.com
  • 10 edits
    5 adds in trunk/WebCore

Bug 22720: Make XMLHttpRequest work in Workers
<https://bugs.webkit.org/show_bug.cgi?id=22720>

Contributed by David Levin.

Reviewed by Alexey Proskuryakov

More removal of document usage from XMLHttpRequest.

  • Abstracted away the sync and async requests behind the ThreadableLoader class, which will get an implementation for Workers. It follows the same model as SubresourceLoader, since it is a thin wrapper around it.
  • Consolidated dashboard compatibility checks into usesDashboardBackwardCompatibilityMode which handles workers.

No observable change in behavior, so no test.

16:13 Changeset [40102] by cmarrin@apple.com
  • 6 edits
    2 adds in trunk

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

The high CPU usage was really from repeatedly firing transitions caused
by a bug in the way we handle background-color animations. If animating
from a valid background color to no background color, we sometimes left
(based on timing) the background color as transparent black, but valid
rather than invalid, which it should be. Fixing that got rid of the
repeated firing.

But we really were doing more expensive iteration of all objects with
animations or transitions on them (running or not). So I added two
optimizations to quickly short circuit when an object had no running
animations or transitions. Things are now as zippy as ever.

15:37 Changeset [40101] by eric@webkit.org
  • 5 edits in trunk

Reviewed by Justin Garcia.

Remove the style= turds left by some editing commands
https://bugs.webkit.org/show_bug.cgi?id=23463

Test: editing/execCommand/toggle-styles.html

  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::removeCSSStyle): check if we just removed the last CSS property and remove the style attribute as well
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::removeNodeAttribute): remove extra ;
15:25 Changeset [40100] by mrowe@apple.com
  • 6 edits in trunk/WebKit/mac

Clean up how we force invocations of API that happened on background threads over to the main thread.

This was previously accomplished in a somewhat ad-hoc manner using a mutable dictionary to pass arguments
and return values back from the function. The new approach is to use a proxy object that forwards an
NSInvocation over to the main thread and applies it to the target object, which leads to a much cleaner
call site.

Reviewed by Tim Hatcher.

  • Misc/WebNSObjectExtras.h:
  • Misc/WebNSObjectExtras.mm:

(-[WebMainThreadInvoker initWithTarget:]):
(-[WebMainThreadInvoker forwardInvocation:]):
(-[WebMainThreadInvoker methodSignatureForSelector:]):
(-[WebMainThreadInvoker handleException:]):
(-[NSInvocation _webkit_invokeAndHandleException:]): Execute the invocation and forward any exception that was
raised back to the WebMainThreadInvoker.
(-[NSObject _webkit_invokeOnMainThread]):

The following methods are updated to use the proxy object to forward methods to the main thread:

  • WebView/WebArchive.mm:

(-[WebArchive initWithMainResource:subresources:subframeArchives:]):
(-[WebArchive mainResource]):
(-[WebArchive subresources]):
(-[WebArchive subframeArchives]):

  • WebView/WebResource.mm:

(-[WebResource data]):
(-[WebResource URL]):
(-[WebResource MIMEType]):
(-[WebResource textEncodingName]):
(-[WebResource frameName]):
(-[WebResource _ignoreWhenUnarchiving]):
(-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
(-[WebResource _initWithData:URL:response:]):
(-[WebResource _suggestedFilename]):
(-[WebResource _response]):
(-[WebResource _stringValue]):

  • WebView/WebView.mm:

(-[WebView initWithFrame:frameName:groupName:]):
(-[WebView initWithCoder:]):

15:20 Changeset [40099] by eric@webkit.org
  • 2 edits in trunk/WebCore

No review, build fix.

Fix release-only build failure (and do a tiny code-cleanup).

  • editing/ApplyStyleCommand.cpp: (WebCore::createFontElement): (WebCore::createStyleSpanElement): (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
14:55 Changeset [40098] by cfleizach@apple.com
  • 10 edits
    2 adds in trunk

Bug 23443: Table accessibility should be re-enabled after fixing crash that occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when attempting to create a link in a rich text message
https://bugs.webkit.org/show_bug.cgi?id=23443

Re-enable Accessibility tables and make sure accessibility code does not interrogate the render tree
during render tree updates

14:16 Changeset [40097] by eric@webkit.org
  • 8 edits in trunk

Reviewed by Justin Garcia.

Fix execCommand() 'super' and 'sub' commands to add <sup> and <sub> in quirks mode, and to toggle when called twice
https://bugs.webkit.org/show_bug.cgi?id=17733

Test changed: editing/execCommand/toggle-styles-expected.txt

  • editing/ApplyStyleCommand.cpp: (WebCore::StyleChange::applySubscript): (WebCore::StyleChange::applySuperscript): (WebCore::StyleChange::StyleChange): (WebCore::StyleChange::init): (WebCore::StyleChange::checkForLegacyHTMLStyleChange): (WebCore::ApplyStyleCommand::isHTMLStyleNode): (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  • editing/EditorCommand.cpp: (WebCore::executeSubscript): (WebCore::executeSuperscript):
  • editing/htmlediting.cpp: (WebCore::createHTMLElement):
  • editing/htmlediting.h:
13:52 Changeset [40096] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-21 Anders Carlsson <andersca@apple.com>

Fix 64-bit build.

  • WebCore.LP64.exp:
13:34 Changeset [40095] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.28

New tag.

13:32 Changeset [40094] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

13:25 Changeset [40093] by mrowe@apple.com
  • 1 edit in branches/Safari-3-2-branch/WebKitLibraries/win/tools/scripts/PRODUCTVERSION

Bump version number.

13:25 Changeset [40092] by mrowe@apple.com
  • 9 edits
    5 adds in branches/Safari-3-2-branch

Merge r33579.

13:25 Changeset [40091] by mrowe@apple.com
  • 2 edits in branches/Safari-3-2-branch/WebCore

Merge r33993.

13:24 Changeset [40090] by mrowe@apple.com
  • 2 edits in branches/Safari-3-2-branch/WebCore

Merge r39247.

13:05 Changeset [40089] by oliver@apple.com
  • 13 edits
    3 copies in trunk/WebCore

Bug 23458: Reintroduce CanvasPixelArray in ImageData.idl
<https://bugs.webkit.org/show_bug.cgi?id=23458>

Reviewed by Alexey Proskuryakov.

Return CanvasPixelArray, et al -- the only difference between this
and the original CPA implementation is that it now uses a ByteArray
rather than a vector. JSC still uses a custom wrapper, but this allows
ObjC, COM, and V8 bindings to be autogenerated again.

12:07 Changeset [40088] by krit@webkit.org
  • 13 edits
    4 deletes in trunk/WebCore

2009-01-21 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Remove last relics of platform dependent PaintServer in SVG.
We draw everything with the help of GraphicsContext.

Remove SVGPaintServerPlatform's
https://bugs.webkit.org/show_bug.cgi?id=23439

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/graphics/SVGPaintServer.cpp: (WebCore::SVGPaintServer::draw): (WebCore::SVGPaintServer::renderPath): (WebCore::SVGPaintServer::teardown):
  • svg/graphics/SVGPaintServer.h:
  • svg/graphics/SVGPaintServerGradient.cpp:
  • svg/graphics/SVGPaintServerGradient.h:
  • svg/graphics/SVGPaintServerPattern.cpp:
  • svg/graphics/SVGPaintServerPattern.h:
  • svg/graphics/SVGPaintServerSolid.cpp:
  • svg/graphics/SVGPaintServerSolid.h:
  • svg/graphics/cairo/SVGPaintServerCairo.cpp: Removed.
  • svg/graphics/cg/SVGPaintServerCg.cpp: Removed.
  • svg/graphics/qt/SVGPaintServerQt.cpp: Removed.
  • svg/graphics/skia/SVGPaintServerSkia.cpp: Removed.
11:49 Changeset [40087] by zimmermann@webkit.org
  • 7 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

Move "Element -> ScriptElement" casting functionality into ScriptElement.h
to be consistent with FormControlElement/InputElement/OptionElement/OptionGroupElement.

It was living in XMLTokenizer before, which is not an obvious place for this.
TODO: Rename 'formControlElementForElement' to 'toFormControlElement' (analogous changes for InputElement etc.)

as suggested by Alexey, it really reads better this way.

10:09 Changeset [40086] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Suggested by Oliver Hunt. Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=23456
Function argument names leak

  • parser/Nodes.cpp: (JSC::FunctionBodyNode::~FunctionBodyNode): Destruct parameter names.
08:44 Changeset [40085] by zimmermann@webkit.org
  • 12 edits
    4 adds in trunk/WebCore

Reviewed by George Staikos.

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

Refactor some functionality from HTMLOption/OptGroupElement needed by RenderListBox/RenderMenuList
in two abstract base classes: OptionElement & OptionGroupElement living in dom/ - just like it
has been done before for FormControlElement and RenderTextControl.

This is needed to prepare the addtion of WMLOption/OptGroupElement.

07:22 QtWebKitJournal edited by hausmann@webkit.org
(diff)
07:22 QtWebKitJournal edited by hausmann@webkit.org
(diff)
Note: See TracTimeline for information about the timeline view.