Timeline


and

02/09/08:

23:00 Changeset [30119] by darin@apple.com
  • 2 edits in trunk/WebKit/mac

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5725996> crash every time you open the Xcode documentation window
  • WebView/WebView.mm: (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Work around a bug in the garbage collector's Objective C++ support by not initializing a static to an object that needs to be marked when running under GC.
22:40 S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
22:08 S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
22:05 S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
21:56 S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
21:49 S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
21:48 S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
21:48 S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
21:43 S60IDE edited by kennykaiyinyu@gmail.com
(diff)
20:52 Changeset [30118] by alp@webkit.org
  • 2 edits in trunk/PlanetWebKit

2008-02-09 Alp Toker <alp@atoker.com>

Only syndicate Jan's WebKit posts, not his entire blog.

  • config.ini:
16:16 Changeset [30117] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • dom/Element.cpp: (WebCore::Element::recalcStyle): Removed unneeded null checks. styleForElement() can never return null.
15:47 Changeset [30116] by hyatt@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Fix for bug 17254, nth-* selectors do not work with negative coefficients.

Reviewed by Mitz.

fast/css/negative-nth-child.html

  • css/CSSStyleSelector.cpp: (WebCore::parseNth):

LayoutTests:

Added test for bug 17254.

Reviewed by Mitz.

  • fast/css/negative-nth-child.html: Added.
14:56 Changeset [30115] by hyatt@apple.com
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

The comedy continues. Bungled the rename from Eric's review when doing the backout of CSSStyleSelector's accidental fix for 17254.

14:54 Changeset [30114] by hyatt@apple.com
  • 4 edits in trunk/WebCore/rendering

Followup to 17203. Missed a directory.

14:51 Changeset [30113] by hyatt@apple.com
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

Back out accidental change to CSSStyleSelector.cpp.

14:49 Changeset [30112] by hyatt@apple.com
  • 70 edits in trunk/WebCore

Fix for bug 17203, high CPU usage loading HTML5 spec. This patch significantly improves the performance
of CSS3 selectors.

(1) Split the notion of being affected by positional rules into "forward" and "backward." The "forward"
selectors do not need to re-resolve during parsing, since children are appended on the end. Only the
"backward" selectors like last-child or nth-last-child have to re-resolve when a close tag is encountered.

(2) Extend childrenChanged to specify whether the children were changed by the parser or not. This allows
Element::childrenChanged to know when the parser is adding children so that it can ignore those adds when
possible.

(3) Make sure all Elements now know whether or not their children are currently parsing. Backwards selectors
like last-child will always return false when children are still being parsed. When an Element finishes
parsing its children, finishParsingChildren() gets called and will make sure the children re-resolve properly.

(4) Added a beginParsingChildren method and renamed finishParsing to finishedParsingChildren.

(5) Eliminated one-off hacks that did the same thing in HTMLObjectElement and HTMLAppletElement.

(6) Patched many incorrect implementations of finishedParsingChildren that did not properly call into their
base class (mostly new SVG elements that got added for SVG fonts around the time this became a requirement).

Reviewed by Eric

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkSelector): (WebCore::CSSStyleSelector::checkOneSelector):
  • dom/Attr.cpp: (WebCore::Attr::childrenChanged):
  • dom/Attr.h:
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::addChild):
  • dom/Document.cpp: (WebCore::Document::childrenChanged):
  • dom/Document.h:
  • dom/Element.cpp: (WebCore::Element::Element): (WebCore::Element::recalcStyle): (WebCore::checkFirstChildRules): (WebCore::checkLastChildRules): (WebCore::checkEmptyRules): (WebCore::checkStyleRules): (WebCore::Element::childrenChanged): (WebCore::Element::finishParsingChildren):
  • dom/Element.h: (WebCore::Element::finishedParsingChildren): (WebCore::Element::beginParsingChildren):
  • dom/Node.cpp:
  • dom/Node.h: (WebCore::Node::finishParsingChildren): (WebCore::Node::beginParsingChildren): (WebCore::Node::childrenChanged):
  • dom/StyledElement.cpp: (WebCore::StyledElement::StyledElement):
  • dom/StyledElement.h:
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs): (WebCore::XMLTokenizer::endElementNs): (WebCore::):
  • html/HTMLAppletElement.cpp: (WebCore::HTMLAppletElement::HTMLAppletElement): (WebCore::HTMLAppletElement::finishParsingChildren):
  • html/HTMLAppletElement.h:
  • html/HTMLElementFactory.cpp: (WebCore::objectConstructor):
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
  • html/HTMLGenericFormElement.h:
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::HTMLObjectElement): (WebCore::HTMLObjectElement::finishParsingChildren): (WebCore::HTMLObjectElement::childrenChanged):
  • html/HTMLObjectElement.h:
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::childrenChanged):
  • html/HTMLOptGroupElement.h:
  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::childrenChanged):
  • html/HTMLOptionElement.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popOneBlockCommon):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::childrenChanged): (WebCore::HTMLScriptElement::finishParsingChildren):
  • html/HTMLScriptElement.h:
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::childrenChanged):
  • html/HTMLSelectElement.h:
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::finishParsingChildren): (WebCore::HTMLStyleElement::childrenChanged):
  • html/HTMLStyleElement.h:
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::childrenChanged):
  • html/HTMLTextAreaElement.h:
  • html/HTMLTitleElement.cpp: (WebCore::HTMLTitleElement::childrenChanged):
  • html/HTMLTitleElement.h:
    • rendering/RenderApplet.cpp:

(WebCore::RenderApplet::createWidgetIfNecessary):

  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget):
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::childrenAffectedByForwardPositionalRules): (WebCore::RenderStyle::setChildrenAffectedByForwardPositionalRules): (WebCore::RenderStyle::childrenAffectedByBackwardPositionalRules): (WebCore::RenderStyle::setChildrenAffectedByBackwardPositionalRules):
  • svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::finishParsingChildren):
  • svg/SVGAnimationElement.h:
  • svg/SVGClipPathElement.cpp: (WebCore::SVGClipPathElement::childrenChanged):
  • svg/SVGClipPathElement.h:
  • svg/SVGDefinitionSrcElement.cpp: (WebCore::SVGDefinitionSrcElement::childrenChanged):
  • svg/SVGDefinitionSrcElement.h:
  • svg/SVGElement.cpp: (WebCore::SVGElement::finishParsingChildren):
  • svg/SVGElement.h:
  • svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::childrenChanged):
  • svg/SVGFontFaceElement.h:
  • svg/SVGFontFaceFormatElement.cpp: (WebCore::SVGFontFaceFormatElement::childrenChanged):
  • svg/SVGFontFaceFormatElement.h:
  • svg/SVGFontFaceSrcElement.cpp: (WebCore::SVGFontFaceSrcElement::childrenChanged):
  • svg/SVGFontFaceSrcElement.h:
  • svg/SVGFontFaceUriElement.cpp: (WebCore::SVGFontFaceUriElement::childrenChanged):
  • svg/SVGFontFaceUriElement.h:
  • svg/SVGGElement.cpp: (WebCore::SVGGElement::childrenChanged):
  • svg/SVGGElement.h:
  • svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::childrenChanged):
  • svg/SVGGradientElement.h:
  • svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::childrenChanged):
  • svg/SVGMarkerElement.h:
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::childrenChanged):
  • svg/SVGMaskElement.h:
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::childrenChanged):
  • svg/SVGPatternElement.h:
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::finishParsingChildren): (WebCore::SVGStyleElement::childrenChanged):
  • svg/SVGStyleElement.h:
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::childrenChanged):
  • svg/SVGStyledElement.h:
  • svg/SVGTitleElement.cpp: (WebCore::SVGTitleElement::childrenChanged):
  • svg/SVGTitleElement.h:
  • svg/SVGUseElement.cpp: (WebCore::SVGUseElement::childrenChanged):
  • svg/SVGUseElement.h:
14:38 Changeset [30111] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2008-02-09 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Unreviewed build fix

Somehow the removal of adjustSliderThumbSize(RenderObject*) sneaked
into the patch.

  • platform/qt/RenderThemeQt.h:
14:16 Changeset [30110] by zecke@webkit.org
  • 5 edits in trunk/WebCore

2008-02-09 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Adele.

paintResizeControl is dead, remove the code. This painting
is done by the RenderLayer.

  • platform/qt/RenderThemeQt.cpp:
  • platform/qt/RenderThemeQt.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:
10:09 Changeset [30109] by darin@apple.com
  • 6 edits in trunk/JavaScriptCore

Reviewed by Mitz.

We'll want to do this to every RefCounted class, one at a time.

  • kjs/nodes.h: (KJS::RegExpNode::RegExpNode): Use RegExp::create instead of new RegExp.
  • kjs/regexp.cpp: (KJS::RegExp::RegExp): Marked inline, set initial ref count to 1. (KJS::RegExp::create): Added. Calls new RegExp then adopts the initial ref.
  • kjs/regexp.h: Reformatted. Made the constructors private. Added static create functions that return objects already wrapped in PassRefPtr.
  • kjs/regexp_object.cpp: (KJS::regExpProtoFuncCompile): Use RegExp::create instead of new RegExp. (KJS::RegExpObjectImp::construct): Ditto.
  • kjs/string_object.cpp: (KJS::stringProtoFuncMatch): Ditto. (KJS::stringProtoFuncSearch): Ditto.
02:45 ApplicationsGtk edited by alp@atoker.com
Add the Vala language binding (diff)
00:13 Changeset [30108] by kevino@webkit.org
  • 3 edits in trunk/WebCore

MSVC7 fixes.
http://bugs.webkit.org/show_bug.cgi?id=17211

02/08/08:

22:47 Changeset [30107] by mrowe@apple.com
  • 3 edits in trunk/WebCore

2008-02-08 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Adam Roben.

Bug 17226: Fix Windows (Cairo) build of image-decoders
http://bugs.webkit.org/show_bug.cgi?id=17226

  • platform/image-decoders/gif/GIFImageDecoder.cpp:
  • platform/image-decoders/png/PNGImageDecoder.cpp:
21:44 Changeset [30106] by alp@webkit.org
  • 2 edits in trunk

2008-02-08 Alp Toker <alp@atoker.com>

Rubber-stamped by Maciej.

Bump autoconf CAIRO_REQUIRED_VERSION up to 1.4.

  • configure.ac:
21:17 Changeset [30105] by oliver@apple.com
  • 6 edits in trunk

<rdar://problem/5731773> REGRESSION (r28973): Extraneous parentheses in function.toString()
https://bugs.webkit.org/show_bug.cgi?id=17214

Reviewed by Maciej

Make a subclass of CommaNode to provide the correct precedence for each expression in
a variable declaration list.

20:15 Changeset [30104] by timothy@apple.com
  • 8 edits in trunk/WebCore

Reviewed by Brady Eidson.

<rdar://problem/5640896> Removing database then trying
to recreate it causes trouble

Added open Database support to DatabaseTracker. So any Database that
is deleted will be marked as deleted and will fail to open any transaction
or execute any new SQL queries.

  • storage/Database.cpp: (WebCore::Database::Database): Call DatabaseTracker::addOpenDatabase. (WebCore::Database::~Database): Call DatabaseTracker::removeOpenDatabase. (WebCore::Database::markAsDeleted): Set the m_deleted flag. (WebCore::Database::version): Return a null String if m_deleted is true.
  • storage/Database.h: (WebCore::Database::deleted): Return m_deleted.
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::addOpenDatabase): Add the Database to a map of origins and names. (WebCore::DatabaseTracker::removeOpenDatabase): Remove the Database from the map. (WebCore::DatabaseTracker::deleteDatabaseFile): Call markAsDeleted on all the open Databases matching the origin/name.
  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::setDatabaseDeletedError): Set the error about the user deleting the database.
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::executeSQL): If the Database is deleted, call setDatabaseDeletedError. (WebCore::SQLTransaction::openTransactionAndPreflight): Set the error about the user deleting the database if the Database was marked as deleted.
17:13 Changeset [30103] by darin@apple.com
  • 3 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Oliver.

Test: fast/js/continue-break-multiple-labels.html

  • kjs/nodes.h: (KJS::StatementNode::pushLabel): Made this virtual. (KJS::LabelNode::pushLabel): Forward pushLabel calls to the statement inside.

LayoutTests:

  • fast/js/continue-break-multiple-labels-expected.txt: Added.
  • fast/js/continue-break-multiple-labels.html: Added.
17:06 Changeset [30102] by darin@apple.com
  • 7 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Eric.

Test: fast/js/constructor-attributes.html

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): Remove unwanted attributes from "constructor".
  • kjs/function_object.cpp: (KJS::FunctionObjectImp::construct): Ditto.
  • kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): Ditto. (KJS::FuncExprNode::evaluate): Ditto.

WebCore:

Reviewed by Eric.

Test: fast/js/constructor-attributes.html

  • bindings/scripts/CodeGeneratorJS.pm: Remove unwanted attributes from "constructor".

LayoutTests:

Reviewed by Eric.

  • fast/js/constructor-attributes-expected.txt: Added.
  • fast/js/constructor-attributes.html: Added.
  • fast/js/resources/constructor-attributes.js: Added.
16:07 Changeset [30101] by andersca@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Mitz.

<rdar://problem/5650446>
http://bugs.webkit.org/show_bug.cgi?id=16102
Crash in FrameLoader::stopLoadingSubframes() on IMDB page

Store the child frame in a RefPtr to prevent it from being deleted when the
frame tree changes while calling stopAllLoaders().


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

LayoutTests:

Reviewed by Mitz.

<rdar://problem/5650446>
http://bugs.webkit.org/show_bug.cgi?id=16102
Crash in FrameLoader::stopLoadingSubframes() on IMDB page

  • http/tests/navigation/changing-frame-hierarchy-in-onload-expected.txt: Added.
  • http/tests/navigation/changing-frame-hierarchy-in-onload.html: Added.
15:35 Changeset [30100] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx port build fix.

15:06 Changeset [30099] by alp@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

ChangeLog entry tweak: crasher affects debug, not release builds

15:04 Changeset [30098] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-08 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

Avoid null-dereference crasher noticed in the GTK+ port and also
affecting the Win release build.

Covered by existing tests.

  • dom/Document.cpp: (WebCore::Document::userStyleSheet):
14:44 Changeset [30097] by andersca@apple.com
  • 5 edits in trunk/WebCore

Reviewed by Adam.

<rdar://problem/5724188>
REGRESSION: PLT 0.7% slower due to 29926 (change Text::createWithLengthLimit to take a UChar pointer)


Revert r29926 which caused the regression.


  • dom/Text.cpp: (WebCore::Text::createWithLengthLimit):
  • dom/Text.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::parseToken):
  • loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
12:05 Changeset [30096] by weinig@apple.com
  • 4 edits
    1 copy
    4 adds in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5732491>
http://bugs.webkit.org/show_bug.cgi?id=17213
The querySelectorAll method on an element node does not search only the element's descendants

Test: fast/dom/SelectorAPI/elementRoot.html

  • dom/Node.cpp: (WebCore::Node::querySelector): Make sure to stay within the root node when traversing the tree.
  • dom/SelectorNodeList.cpp: (WebCore::SelectorNodeList::SelectorNodeList): ditto.

LayoutTests:

Reviewed by Hyatt.

Test for <rdar://problem/5732491>
http://bugs.webkit.org/show_bug.cgi?id=17213
The querySelectorAll method on an element node does not search only the element's descendants

  • fast/dom/SelectorAPI/elementRoot-expected.txt: Added.
  • fast/dom/SelectorAPI/elementRoot.html: Added.
  • fast/dom/SelectorAPI/resources: Added.
  • fast/dom/SelectorAPI/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • fast/dom/SelectorAPI/resources/elementRoot.js: Added.
11:23 Changeset [30095] by hyatt@apple.com
  • 2 edits in trunk/WebCore

Fix for bug 16798, button should default to type=submit.

Reviewed by darin

  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::type): (WebCore::HTMLButtonElement::parseMappedAttribute):
08:51 Changeset [30094] by aroben@apple.com
  • 2 edits in trunk/WebKitSite
  • perf/slickspeed/config.ini: Fixed version number.
08:47 Changeset [30093] by aroben@apple.com
  • 2 edits
    1 move in trunk/WebKitSite

Update jQuery to v1.2.3

Rubberstamped by Mitz.

  • perf/slickspeed/config.ini:
  • perf/slickspeed/frameworks/jquery-1.2.3.js: Renamed from WebKitSite/perf/slickspeed/frameworks/jquery-1.2.1.js.
08:24 Changeset [30092] by aroben@apple.com
  • 6 edits in trunk/WebCore

2008-02-08 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Jon Honeycutt.

Redefine some platform-specific types as cross-platform types
Add pathGetFileName method to get the filename from a path string
Add unloadModule method to unload a loadable module from the process
Implement new methods for GTK+ and Windows
Implement missing homeDirectoryPath method for GTK+
Add stub methods for new and missing methods for Wx and Qt

  • platform/FileSystem.h:
  • platform/gtk/FileSystemGtk.cpp:
  • platform/qt/FileSystemQt.cpp:
  • platform/win/FileSystemWin.cpp:
  • platform/wx/FileSystemWx.cpp:
08:08 Changeset [30091] by aroben@apple.com
  • 2 edits in trunk/WebCore

Windows build fix after r30088

  • bindings/scripts/CodeGeneratorCOM.pm: Touch this to force the COM bindings to rebuild.
02:41 Changeset [30090] by alp@webkit.org
  • 5 edits in trunk

2008-02-08 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=17009
[Gtk] Webkit strips accents from some dead-key combinations

KeyEvents have to go through the gtk input method.

02:35 Changeset [30089] by darin@apple.com
  • 31 edits
    2 copies
    27 adds in trunk

WebCore:

Reviewed by Eric.

Test: traversal/exception-forwarding.html

This turned into a near-rewrite of NodeIterator and TreeWalker.

  • bindings/js/JSNodeFilterCondition.h:
  • bindings/js/JSNodeFilterCondition.cpp: (WebCore::takeException): Added. (WebCore::JSNodeFilterCondition::acceptNode): Added an out parameter to return a JavaScript exception.
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::JSNodeFilter::acceptNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set.
  • bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set. (WebCore::JSNodeIterator::previousNode): Ditto.
  • bindings/js/JSTreeWalkerCustom.cpp: (WebCore::JSTreeWalker::parentNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set. (WebCore::JSTreeWalker::firstChild): Ditto. (WebCore::JSTreeWalker::lastChild): Ditto. (WebCore::JSTreeWalker::nextSibling): Ditto. (WebCore::JSTreeWalker::previousSibling): Ditto. (WebCore::JSTreeWalker::previousNode): Ditto. (WebCore::JSTreeWalker::nextNode): Ditto.
  • bindings/objc/DOM.mm: (WebCore::ObjCNodeFilterCondition::acceptNode): Updated to include new exception out parameter. (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): Use RefPtr to make object lifetimes clearer. (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]): Ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Added include of NodeFilter.h for JSDocument.cpp.
  • dom/Document.h:
  • dom/Document.cpp: (WebCore::Document::createNodeIterator): Changed to use PassRefPtr. (WebCore::Document::createTreeWalker): Ditto.
  • dom/NodeFilter.h:
  • dom/NodeFilter.cpp: (WebCore::NodeFilter::NodeFilter): Changed to use PassRefPtr. (WebCore::NodeFilter::acceptNode): Added an out parameter to return a JavaScript exception.
  • dom/NodeFilter.idl: Custom binding for acceptNode.
  • dom/NodeFilterCondition.h:
  • dom/NodeFilterCondition.cpp: (WebCore::NodeFilterCondition::acceptNode): Added an out parameter to return a JavaScript exception.
  • dom/NodeIterator.cpp: (WebCore::NodeIterator::NodeIterator): Changed to use PassRefPtr more. Eliminated m_doc, using the root node instead, and unnecessary check for null -- rootNode must be non-null and all nodes have a non-null document. (WebCore::NodeIterator::~NodeIterator): Changed to get document from root. (WebCore::NodeIterator::nextNode): Rewrote to use a RefPtr since the acceptNode function could do anything, including removing the last reference to the current node. Also folded findNextNode into this function since it's the only one that needs to call it. (WebCore::NodeIterator::previousNode): Same thing, but the other direction. (WebCore::NodeIterator::detach): Changed to use the root node as the indication that we're detached rather than a separate boolean. (WebCore::NodeIterator::notifyBeforeNodeRemoval): Removed some unnneeded checks. Removed incorrect use of findNextNode/findPreviousNode -- those functions call acceptNode and the DOM standard is quite clear that these functions do not take that into account, allowing the current node to become one that's not accepted.
  • dom/NodeIterator.h: Changed constructor to use PassRefPtr more. Changed nextNode and previousNode to have an out parameter with a JavaScript exception. Removed helper functions setReferenceNode, setPointerBeforeReferenceNode, detached, setDetached, document, findNextNode, and findPreviousNode. All were unnecessary. Removed data member m_doc which was just rootNode()->document().
  • dom/NodeIterator.idl: Custom binding for nextNode and previousNode.
  • dom/Traversal.cpp: (WebCore::Traversal::Traversal): Use PassRefPtr more. (WebCore::Traversal::acceptNode): Added out parameter for JavaScript exception. Also rearranged the function a little bit for clarity.
  • dom/Traversal.h: Changed acceptNode to have an out parameter with a JavaScript exception and made it protected, since it's only for use by the derived classes.
  • dom/TreeWalker.cpp: (WebCore::TreeWalker::TreeWalker): Updated to use PassRefPtr. (WebCore::TreeWalker::setCurrentNode): Updated to use PassRefPtr and deleted the overloaded version since it's not needed. (WebCore::TreeWalker::parentNode): Rewrote to propagate the exception and also to implement rules about when to check things like whether we're in the tree. The previous fix where we called isDescendantOf was not entirely correct, because the specification allows you to walk outside the tree if you get there somehow. What it doesn't allow is walking outside the tree from inside. The new implementation handles this correctly. (WebCore::TreeWalker::firstChild): Ditto. (WebCore::TreeWalker::lastChild): Ditto. (WebCore::TreeWalker::previousSibling): Ditto. (WebCore::TreeWalker::nextSibling): Ditto. (WebCore::TreeWalker::previousNode): Ditto. Because of the need to check the acceptNode function on parents, this can't use traversePreviousNode (more's the pity, because it's a bit complicated). (WebCore::TreeWalker::nextNode): Ditto.
  • dom/TreeWalker.h: Changed constructor and setCurrentNode to use PassRefPtr more. Changed the navigation functions to have an out parameter with a JavaScript exception. Removed helper functions setCurrentNode and ancestorRejected.
  • dom/TreeWalker.idl: Custom binding for navigation functions.

LayoutTests:

Reviewed by Eric.

  • grabbed NodeIterator and TreeWalker tests from Hixie's site and KHTML
  • traversal/exception-forwarding-expected.txt: Added.
  • traversal/exception-forwarding.html: Added.
  • traversal/resources: Added.
  • traversal/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • traversal/resources/exception-forwarding.js: Added.
  • traversal/node-iterator-001-expected.txt: Updated to reflect correct results. The old results reflected a bug in our NodeIterator.
  • traversal/node-iterator-001.html: Ditto.
  • traversal/node-iterator-006.html: Changed test so there's no whitespace node after the <span> elements inside the test root element (a <div>). The old test results were incorrect; the new NodeIterator implementation correctly returned the whitespace node for this test.
  • traversal/node-iterator-006a.html: Copied from traversal/node-iterator-006.html. Preserve the original test, which now has a strange result. But the result is correct, so it's worth keeping around.
  • traversal/node-iterator-006a-expected.txt: Added.
  • fast/dom/TreeWalker/TreeWalker-currentNode-expected.txt: Regenerated.
  • fast/dom/TreeWalker/resources/TreeWalker-currentNode.js: Updated test to expect results that match the DOM specification.
  • traversal/hixie-node-iterator/001-expected.txt: Added.
  • traversal/hixie-node-iterator/001.xml: Added.
  • traversal/hixie-node-iterator/002-expected.txt: Added.
  • traversal/hixie-node-iterator/002.xml: Added.
  • traversal/hixie-node-iterator/003-expected.txt: Added.
  • traversal/hixie-node-iterator/003.xml: Added.
  • traversal/hixie-node-iterator/004-expected.txt: Added.
  • traversal/hixie-node-iterator/004.xml: Added.
  • traversal/hixie-node-iterator/005-expected.txt: Added.
  • traversal/hixie-node-iterator/005.xml: Added.
  • traversal/hixie-node-iterator/006-expected.txt: Added.
  • traversal/hixie-node-iterator/006.xml: Added.
  • traversal/hixie-node-iterator/007-expected.txt: Added.
  • traversal/hixie-node-iterator/007.xml: Added.
  • traversal/hixie-node-iterator/008-expected.txt: Added.
  • traversal/hixie-node-iterator/008.xml: Added.
  • traversal/hixie-node-iterator/009-expected.txt: Added.
  • traversal/hixie-node-iterator/009.xml: Added.
  • traversal/hixie-node-iterator/010-expected.txt: Added.
  • traversal/hixie-node-iterator/010.xml: Added.
  • traversal/hixie-node-iterator/origin.txt: Added.
  • traversal/tree-walker-filter-1-expected.txt: Added.
  • traversal/tree-walker-filter-1.html: Added.
01:04 Changeset [30088] by eric@webkit.org
  • 18 edits
    12 adds in trunk

Reviewed by darin.

Add support for Text.wholeText and Text.replaceWholeText
http://bugs.webkit.org/show_bug.cgi?id=17125

Test EntityReferences to make sure they're always treated as read-only
In doing so I discovered a bug in document.adoptNode(readonlyNode) (and fixed it)

  • dom/Document.cpp: (WebCore::Document::adoptNode): throw NO_MODIFICATION_ALLOWED_ERR when passed a readonly node
  • dom/Node.cpp:
  • dom/Node.cpp: (WebCore::Node::textContent):
  • dom/Text.cpp: (WebCore::earliestLogicallyAdjacentTextNode): (WebCore::latestLogicallyAdjacentTextNode): (WebCore::Text::wholeText): (WebCore::Text::replaceWholeText):
  • dom/Text.h:
  • dom/Text.idl:

02/07/08:

23:18 Changeset [30087] by oliver@apple.com
  • 5 edits in trunk

Kimmo Kinnunen <kimmok@iki.fi>

Reviewed by Tim Hatcher.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17191
HTML5: Client-side database queries should return values of type number
Test: storage/sql-data-types.html

Make the DB queries return a value as a number if it was inserted
as a number to the database.

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::getColumnValue): new member function to return SQLValues

  • platform/sql/SQLiteStatement.h:
  • storage/SQLStatement.cpp:

(WebCore::SQLStatement::execute): use getColumnValue instead of getColumnText

22:36 Changeset [30086] by adachan@apple.com
  • 7 edits
    1 add in trunk/WebKit/win

<rdar://problem/5292433> certificate authentication support broken in Safari 3.0
Added mechanism to communicate client certificate info back to CFNetwork.

Reviewed by Adam.

  • Interfaces/IWebError.idl: Added new WebURLErrorClientCertificateRequired error.
  • Interfaces/IWebMutableURLRequestPrivate.idl: Added. Added method to set client certificate info on the request.
  • WebKit.vcproj/Interfaces.vcproj: Added new idl.
  • WebKit.vcproj/WebKit.vcproj: Link crypt32.lib
  • WebKit.vcproj/WebKitGUID.vcproj:
  • WebMutableURLRequest.cpp: (WebMutableURLRequest::QueryInterface): Implements IWebMutableURLRequestPrivate. (deallocCertContext): Free certificate context. (copyCert): Duplicate the certificate context and returns it in a CFDataRef. (WebMutableURLRequest::setClientCertificate):
  • WebMutableURLRequest.h:
22:33 Changeset [30085] by adachan@apple.com
  • 3 edits in trunk/WebCore

<rdar://problem/5292433> certificate authentication support broken in Safari 3.0
Added mechanism to communicate client certificate info back to CFNetwork.

Reviewed by Adam.

  • platform/network/ResourceHandle.h:
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::clientCerts): Keep a mapping of hosts to client certificates. (WebCore::makeFinalRequest): If we have a client certificate for the host, pass it to CFNetwork by setting it in the SSL properties. (WebCore::ResourceHandle::setClientCertificate): Map client certificate to the host.
22:29 Changeset [30084] by adachan@apple.com
  • 4 edits in trunk/WebKitLibraries

Added 4 new methods:
wkSetClientCertificateInSSLProperties,
wkCanAccessCFURLRequestHTTPBodyParts,
wkCFURLRequestCopyHTTPRequestBodyParts,
wkCFURLRequestSetHTTPRequestBodyParts

Rubber-stamped by Steve.

  • win/include/WebKitSystemInterface/WebKitSystemInterface.h:
  • win/lib/WebKitSystemInterface.lib:
  • win/lib/WebKitSystemInterface_debug.lib:
22:01 Changeset [30083] by dsmith@webkit.org
  • 2 edits in trunk/WebKitSite

Rubber stamped by weinig and bdash.
Update prototype.js to 1.6.0.2 to be a bit less unfair in comparative benchmarking.

  • perf/slickspeed/frameworks/prototype.js:
15:54 Changeset [30082] by aroben@apple.com
  • 2 edits in trunk/WebCore

Qt build fix

  • platform/SharedBuffer.cpp: Removed a stub implementation of createWithContentsOfFile, now that each platform has its own stub.
15:34 Changeset [30081] by aroben@apple.com
  • 2 edits in trunk/WebCore

Fix Bug 17138: REGRESSION: Node highlight not updated properly

<http://bugs.webkit.org/show_bug.cgi?id=17138>
<rdar://problem/5719869>

Reviewed by Darin.

No test possible.

  • page/InspectorController.cpp: (WebCore::InspectorController::drawNodeHighlight): Update the overlayRect after scrolling to make sure that we translate the context by the correct amount.
15:29 Changeset [30080] by aroben@apple.com
  • 3 edits in trunk/WebCore

Qt and GTK+ build fixes

  • platform/gtk/FileSystemGtk.cpp: Added a missing #include.
  • platform/qt/FileSystemQt.cpp: Ditto.
15:19 Changeset [30079] by aroben@apple.com
  • 4 edits
    2 adds in trunk/WebCore

Some cleanup of Mac-only user stylesheet code

I moved UserStyleSheetLoader out of Frame.cpp into its own files, and
moved some Mac-only Frame methods to FrameMac.mm.

Reviewed by Darin.

  • WebCore.xcodeproj/project.pbxproj: Added new files to project.
  • loader/mac/UserStyleSheetLoader.cpp: Added. (UserStyleSheetLoader::UserStyleSheetLoader): (UserStyleSheetLoader::~UserStyleSheetLoader):
  • loader/mac/UserStyleSheetLoader.h: Added.
  • page/Frame.cpp: Removed setUserStyleSheet[Location]
  • page/mac/FrameMac.mm: (WebCore::Frame::setUserStyleSheetLocation): Moved here from Frame.cpp. (WebCore::Frame::setUserStyleSheet): Ditto.
15:19 Changeset [30078] by aroben@apple.com
  • 23 edits in trunk/WebCore

Fix <rdar://5555260> GMail never loads when a user stylesheet is specified

The fix in r29841 did not guarantee that the user stylesheet would not
still be loading by the time GMail called document.write, and so was
not a complete fix.

This change reworks the user stylesheet loading mechanism on non-Mac
platforms to load the stylesheet synchronously from disk, and then
keeps it in memory. This obsoletes the issue of what our behavior
should be before the user stylesheet has loaded and what should happen
when it finishes loading, as the user stylesheet will always be
available when the Document first asks for it. Note, however, that
this removes the ability to specify a non-file: URL for the user
stylesheet. This change was not made for the Mac platform because it's
possible that WebKit clients are relying on non-file: URLs for user
stylesheets. It would also be nice to move back to an asynchronous
loading model someday, but that is not currently possible since we
don't have an asynchronous loading mechanism that is not tied to a
particular Frame.

The responsibility of loading and storing the user stylesheet has
moved from Frame to Page, since the user stylesheet URL is set on the
Page-level Settings object.

Reviewed by Darin.

  • dom/Document.cpp: (WebCore::Document::Document): Changed to call userStyleSheet(). (WebCore::Document::setUserStyleSheet): Made Mac-only. (WebCore::Document::userStyleSheet): Changed to call up to Page on non-Mac platforms. (WebCore::Document::recalcStyleSelector): Changed to call userStyleSheet().
  • dom/Document.h:
    • Made setUserStyleSheet and the m_usersheet member Mac-only
    • Changed userStyleSheet to return a String instance instead of a String reference, since we now might return a new null String.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Made the call to Frame::setUserStyleSheetLocation Mac-only.
  • page/Frame.cpp: Made UserStyleSheetLoader and related code Mac-only. (WebCore::Frame::~Frame): Ditto. (WebCore::Frame::reapplyStyles): Made the call to setUserStyleSheet[Location] Mac-only. On non-Mac platforms the Document will pick up the new stylesheet in Document::reapplyStyles. (WebCore::FramePrivate::FramePrivate): Made m_userStyleSheetLoader Mac-only.
  • page/Frame.h: Made setUserStyleSheet[Location] Mac-only.
  • page/FramePrivate.h: Made m_userStyleSheetLoader Mac-only.
  • page/Page.cpp: (WebCore::Page::Page): Initialize new members. (WebCore::Page::userStyleSheetLocationChanged): Added. Does nothing on Mac. On non-Mac, resets all members relating to the user stylesheet so we'll know to load it again the next time it's asked for. (WebCore::Page::userStyleSheet): Added. Loads the user stylesheet if the user stylesheet location has changed since the last time we loaded it, or if the file has been modified since we last loaded it, then returns the contents of the user stylesheet as a String.
  • page/Page.h: Added new methods/members.
  • page/Settings.cpp: (WebCore::Settings::setUserStyleSheetLocation): Changed to call Page::userStyleSheetLocationChanged.
  • page/Settings.h: Changed userStyleSheetLocation to return the KURL by reference instead of making a copy.
  • platform/FileSystem.h: Added declaration for getFileModificationTime.
  • platform/KURL.h: Added declaration for fileSystemPath method.
  • platform/cf/KURLCFNet.cpp: (WebCore::KURL::fileSystemPath): Added.
  • platform/posix/FileSystemPOSIX.cpp: (WebCore::getFileModificationTime): Added.
  • platform/qt/KURLQt.cpp: (WebCore::KURL::fileSystemPath): Stubbed out.
  • platform/win/FileSystemWin.cpp: (WebCore::getFileModificationTime): Added.
  • platform/qt/FileSystemQt.cpp: Stubbed out getFileModificationTime.
  • platform/gtk/FileSystemGtk.cpp: Ditto.
  • platform/wx/FileSystemWx.cpp: Ditto.
  • platform/qt/TemporaryLinkStubs.cpp: Stubbed out SharedBuffer::createWithContentsOfFile.
  • platform/gtk/TemporaryLinkStubs.cpp: Ditto, along with KURL::fileSystemPath.
  • platform/wx/TemporaryLinkStubs.cpp: Ditto.
15:18 Changeset [30077] by aroben@apple.com
  • 2 edits in trunk/WebCore

Clean up FileSystemWin.cpp

This cleanup also makes us call _wstat64 instead of _wstat32i64. The
only difference between these two functions is that _wstat64 gives
64-bit time values, while _wstat32i64 only gives 32-bit time values.

Reviewed by Darin.

All tests pass.

  • platform/win/FileSystemWin.cpp: (WebCore::statFile): New static helper that wraps _wstat64. (WebCore::fileSize): Changed to call statFile. (WebCore::fileExists): Ditto.
15:18 Changeset [30076] by aroben@apple.com
  • 12 edits in trunk/WebCore

Rename fileSize to getFileSize

Rubberstamped by Darin.

  • platform/FileSystem.h:
  • platform/gtk/FileSystemGtk.cpp:
  • platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::setHTTPBody):
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::setupPOST):
  • platform/posix/FileSystemPOSIX.cpp:
  • platform/qt/FileSystemQt.cpp:
  • platform/win/FileSystemWin.cpp:
  • platform/wx/FileSystemWx.cpp:
  • storage/Database.cpp: (WebCore::Database::databaseSize):
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::usageForDatabase):
  • storage/OriginUsageRecord.cpp: (WebCore::OriginUsageRecord::diskUsage):
15:17 Changeset [30075] by aroben@apple.com
  • 2 edits in trunk/WebCore

Make KURL::isLocalFile treat the URL's protocol case-insensitively

Reviewed by Darin.

  • platform/KURL.cpp: (WebCore::KURL::isLocalFile): Use equalIgnoringCase instead of ==.
14:35 Changeset [30074] by mrowe@apple.com
  • 1 copy in branches/Safari-3-1-branch

New branch.

14:10 Changeset [30073] by eric@webkit.org
  • 2 edits in trunk/SunSpider

Reviewed by Sam.

  • sunspider: add an error message when ./tests/LIST is not found
13:32 Changeset [30072] by dsmith@webkit.org
  • 2 edits in trunk/WebKitSite

Rubber stamped by Mark Rowe
Fix a duplicate selector in the test.

  • perf/slickspeed/selectors.list:
13:19 Changeset [30071] by dsmith@webkit.org
  • 2 edits in trunk/WebKitSite

Reviewed by Adam Roben.
Added :nth-child and :last-child to the list of selectors to test.

  • perf/slickspeed/selectors.list:
12:26 wxWebKit edited by kevino@theolliviers.com
(diff)
12:22 wxWebKit created by kevino@theolliviers.com
12:20 WikiStart edited by kevino@theolliviers.com
add wx port to wiki (diff)
12:14 Changeset [30070] by hyatt@apple.com
  • 2 adds in trunk/LayoutTests
12:13 Changeset [30069] by hyatt@apple.com
  • 9 edits in trunk/WebCore

Fix for bug 6248, implement the nth-* CSS3 selectors. Patch based on original KHTML work from Allan Jensen
and improved upon by Nick Shanks.

Reviewed by Eric

  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::lex):
  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
  • css/CSSSelector.h: (WebCore::CSSSelector::):
  • css/CSSStyleSelector.cpp: (WebCore::parseNth): (WebCore::matchNth): (WebCore::CSSStyleSelector::checkOneSelector):
  • css/tokenizer.flex:
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::childIndex): (WebCore::RenderStyle::setChildIndex):
11:08 Changeset [30068] by aroben@apple.com
  • 2 edits in trunk/WebKitTools

Fix error in bisect-builds when responding "broken" for the first build

Reviewed by Dave Kilzer.

  • Scripts/bisect-builds: Only try to test the build if the nightly info for the current index has not been deleted.
09:01 Changeset [30067] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5729411> REGRESSION (r29834): Float contained in relative-positioned block is painted twice

Test: fast/block/float/relative-painted-twice.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addOverhangingFloats): Added another case where the child should not take over painting the float: when they do not have the same enclosing layer. In that case, the float is already being painted by one of its closer ancestors.

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/5729411> REGRESSION (r29834): Float contained in relative-positioned block is painted twice
  • fast/block/float/relative-painted-twice.html: Added.
  • platform/mac-leopard/fast/block/float/relative-painted-twice-expected.checksum: Added.
  • platform/mac-leopard/fast/block/float/relative-painted-twice-expected.png: Added.
  • platform/mac/fast/block/float/relative-painted-twice-expected.txt: Added.
08:59 Changeset [30066] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: platform/mac/fast/text/family-for-font-matched-by-name.html

  • platform/mac/WebFontCache.mm: (+[WebFontCache internalFontWithFamily:traits:size:]): Changed to use the family of the font whose name matches the desired family if there is no exact family match.

LayoutTests:

Reviewed by Darin Adler.

  • platform/mac/fast/text/family-for-font-matched-by-name-expected.checksum: Added.
  • platform/mac/fast/text/family-for-font-matched-by-name-expected.png: Added.
  • platform/mac/fast/text/family-for-font-matched-by-name-expected.txt: Added.
  • platform/mac/fast/text/family-for-font-matched-by-name.html: Added.
07:06 Changeset [30065] by bdakin@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Geoff.

Fix for <rdar://problem/5697882> Traffic or Street View button on
Google Maps is sometimes not positioned correctly (17000)

On the Mac, timers fire in the order that they are registered.
Geoff and I discovered that this is not necessarily true on
Windows, and that turned out to be the cause of this intermittent
layout problem at Google Maps. This patch adds a new member
variable to Timer to remember the timer's insertion point into the
heap. Now when comparing timers, if two timers were registered at
the same time, their insertion orders are compared to determine
which should fire first. This code actually never runs on Debug
builds on the Mac; the system clock on the Mac is accurate enough
that it knows that the two timers were not registered at *exactly*
the same time. This is not the case on Windows. In theory, if we
sped up Javascript enough on the Mac, this code would run and would
prevent misrenderings such as the one found on Google Maps.

  • platform/Timer.cpp: (WebCore::operator<): (WebCore::TimerBase::setNextFireTime):
  • platform/Timer.h:

LayoutTests:

Test written by Geoff, reviewed by me.

Test for <rdar://problem/5697882> Traffic or Street View button on
Google Maps is sometimes not positioned correctly (17000)

  • fast/dom/simultaneouslyRegsiteredTimerFireOrder-expected.txt: Added.
  • fast/dom/simultaneouslyRegsiteredTimerFireOrder.html: Added.
05:59 Changeset [30064] by ggaren@apple.com
  • 2 edits in trunk/WebKitTools

Reviewed by Alexey Proskuryakov.

Fixed two minor typos in the --root option, to get it working.

  • Scripts/run-sunspider:
    1. Actually assign the function argument to our local variable.
    2. Actually set the $root variable, so we don't try to build later.
02:08 Changeset [30063] by zimmermann@webkit.org
  • 2 edits
    2109 moves
    2086 adds in trunk/LayoutTests

Rubber stamped by Eric.

Move existing SVG baseline from platform/mac/ to platform/mac-tiger/ (I generated all of them using Tiger).
Regenerated new SVG baseline in platform/mac-leopard. platform/mac/svg is doesn't contain any test results anymore.

In a later step it should be investigated, which layout test results can be shared between Leopard & Tiger.
Those results should be moved to platform/mac/svg then.

02/06/08:

23:17 Changeset [30062] by justin.garcia@apple.com
  • 11 edits in trunk

WebCore:

Reviewed by Darin Adler.

<rdar://problem/5195056> Huge plain text pastes are slow


This was fixed in r27369 and then r29367 and r29667 caused performance to
regress.

  • editing/EditCommand.cpp: (WebCore::EditCommand::apply): Only updateLayout() for high level commands. (WebCore::EditCommand::unapply): Ditto. (WebCore::EditCommand::reapply): Ditto.
  • editing/Editor.cpp: (WebCore::Editor::appliedEditing): Added a note about shouldChangeSelection calls that shouldn't be made, a bug I filed as <rdar://problem/5729315>. (WebCore::Editor::unappliedEditing): Ditto. (WebCore::Editor::reappliedEditing): Ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved): Don't try to test the selection base and extent with the expensive isCandidate operation if the node that will be removed is in a fragment, since such a removal is guaranteed to have no effect on a selection. This is to speed up the paste operation, which does many removes from a fragment.

LayoutTests:

Reviewed by Darin Adler.


<rdar://problem/5195056> Huge plain text pastes are slow


The changes made for this fix exposed several more cases of:
<rdar://problem/5729315> Some shouldChangeSelectedDOMRange contain Ranges for selections that are no longer valid

  • platform/mac/editing/deleting/collapse-whitespace-3587601-fix-expected.txt:
  • platform/mac/editing/deleting/delete-3608462-fix-expected.txt:
  • platform/mac/editing/deleting/delete-4083333-fix-expected.txt:
  • platform/mac/editing/execCommand/find-after-replace-expected.txt:
  • platform/mac/editing/selection/move-between-blocks-no-001-expected.txt:
  • platform/mac/editing/selection/replace-selection-1-expected.txt:
22:16 Changeset [30061] by ap@webkit.org
  • 2 edits in trunk/LayoutTests

Landing updated (improved) results for this test. The results changed in r30013,
but this wasn't immediately noticed because of the test being on Leopard skipped list.

Interestingly, js-test-pre.js has a workaround for the issue fixed in this revision in
its debug() function, but not in description(). Keeping the workaround for now to let tests
keep running in shipping Safari/WebKit.

  • svg/css/glyph-orientation-rounding-test-expected.txt:
20:12 Changeset [30060] by kevino@webkit.org
  • 4 edits in trunk/WebCore

Switch from directly handling wx scroll wheel events to handling the PlatformWheelEvent instead to give JS, etc. a chance to handle it.
http://bugs.webkit.org/show_bug.cgi?id=17179

20:00 Changeset [30059] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2008-02-06 Mark Rowe <mrowe@apple.com>

Fix Windows builds.

  • WebCore.vcproj/WebCore.vcproj: Unbreak the XML of the project file.
18:40 Changeset [30058] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Mac build fix. Track rename that happened in r30056.

18:00 Changeset [30057] by oliver@apple.com
  • 4 edits in trunk/LayoutTests

Fix expected output for layout tests to match tiger expected (and so work on the build bots)

RS=Stephanie

17:52 Changeset [30056] by mrowe@apple.com
  • 11 edits
    7 copies
    1 move
    6 adds in trunk/WebCore

2008-02-06 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=16979
Conditionalize CoreGraphics vs Cairo support in Windows port.

17:36 Changeset [30055] by andersca@apple.com
  • 4 edits in trunk/WebCore

Reviewed by Darin.

Change httpBodyFromStream to take the request instead of the stream.


  • platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::httpBodyFromRequest):
  • platform/network/cf/FormDataStreamCFNet.h:
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdateResourceRequest):
17:24 Changeset [30054] by kmccullough@apple.com
  • 1 edit
    2 adds in trunk/WebCore

Reviewed by Darin.

  • Added manual tests for <rdar://problem/5556374> REGRESSION: cross-domain error when one URL uses an explicit port number and another doesn't
  • manual-tests/Default-port-frame.html: Added.
  • manual-tests/resources/Default-port-frame-contents.html: Added.
14:23 Changeset [30053] by oliver@apple.com
  • 2 edits in trunk/WebCore

Update build flags to fix windows build

14:03 Changeset [30052] by kmccullough@apple.com
  • 5 edits
    7 deletes in trunk

WebCore:

Rubberstamped by Darin.

<rdar://problem/5727708> REGRESSION (r29952): Can't send message from Yahoo Mail beta

  • Reverted the change that caused the regression.
  • dom/Document.cpp: (WebCore::Document::createElement): (WebCore::Document::createElementNS): (WebCore::Document::getElementById): (WebCore::Document::parseQualifiedName): (WebCore::Document::createAttributeNS):
  • dom/Document.idl:

LayoutTests:

Rubberstamped by Darin.

<rdar://problem/5727708> REGRESSION (r29952): Can't send message from Yahoo Mail beta

  • Reverted the change that caused the regression.
  • dom/xhtml/level3/core/documentsetstricterrorchecking02-expected.txt:
  • fast/dom/Document/createAttributeNS-namespace-err-expected.txt: Removed.
  • fast/dom/Document/createAttributeNS-namespace-err.html: Removed.
  • fast/dom/Document/createElementNS-namespace-err-expected.txt: Removed.
  • fast/dom/Document/createElementNS-namespace-err.html: Removed.
  • fast/dom/Document/resources/TEMPLATE.html: Removed.
  • fast/dom/Document/resources/createAttributeNS-namespace-err.js: Removed.
  • fast/dom/Document/resources/createElementNS-namespace-err.js: Removed.
13:46 Changeset [30051] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.


Added an ASSERT to catch refCount underflow, since it caused a leak in
my last check-in.

  • wtf/RefCounted.h: (WTF::RefCounted::deref):
13:24 Changeset [30050] by ggaren@apple.com
  • 4 edits in trunk/WebCore

Reviewed by Oliver Hunt.


Fixed <rdar://problem/5728081> REGRESSION: Many leaks on buildbot

The problem was refCount underflow in NamedAttrMap.


Neither our regression tests nor the stress test have yet discovered
another instance of this problem.

  • dom/NamedAttrMap.cpp: (WebCore::NamedAttrMap::addAttribute): Changed to use PassRefPtr, for fast and correct refCount management. Also, change a rediculously slow malloc to a slightly less rediculously slow realloc.
  • dom/NamedAttrMap.h: (WebCore::NamedAttrMap::insertAttribute): Changed to use PassRefPtr, for fast and correct refCount management.
  • html/HTMLTokenizer.cpp: (WebCore::Token::addAttribute): Use a RefPtr, to guarantee that the object starts with a refCount of 1.
13:21 Changeset [30049] by mrowe@apple.com
  • 1 edit in trunk/WebCore/page/InspectorController.cpp

Fix typo in comment added in r30047.

12:19 Changeset [30048] by timothy@apple.com
  • 1 edit
    1180 adds in trunk

Dump of bugs.webkit.org's Bugzilla instance.

11:29 Changeset [30047] by darin@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5723293> NULL-deref crash in PropertyMap::put opening web inspector with View Source window as target
  • page/InspectorController.cpp: (WebCore::canPassNodeToJavaScript): Added. Returns false if the node is in a document with JavaScript disabled. (WebCore::InspectorController::inspect): Check canPassNodeToJavaScript and do nothing if it returns false.
11:27 Changeset [30046] by hyatt@apple.com
  • 1 delete in trunk/LayoutTests/dom/xhtml/level2/html/object06.xhtml

Remove bad layout test.:

11:26 Changeset [30045] by hyatt@apple.com
  • 1 delete in trunk/LayoutTests/dom/html/level2/html/object06.html

Remove bad layout test.:

11:26 Changeset [30044] by hyatt@apple.com
  • 4 edits in trunk/WebCore

Fix for bug 16799, object elements should return absolute URLs from .data.

Reviewed by Mark Rowe

  • dom/Document.cpp: (WebCore::Document::completeURL):
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::href):
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::data):
10:17 Changeset [30043] by antti@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/5726340>
<video autoplay controls> left in unplayable state if navigated away, then back to, before video finished loading


When moving document in and out from the page cache:

  • Cancel incomplete load by deleting the media player. This guarantees everything is in consistent state.
  • Restart the load if it was aborted in the middle.
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::~HTMLMediaElement): (WebCore::HTMLMediaElement::load): (WebCore::HTMLMediaElement::willSaveToCache): (WebCore::HTMLMediaElement::didRestoreFromCache):
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::player):
09:53 Changeset [30042] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

PLT speedup related to <rdar://problem/5659272> REGRESSION: PLT .4%
slower due to r28884 (global variable symbol table optimization)


Tweaked RefCounted::deref() to be a little more efficient.

1% - 1.5% speedup on my machine. .7% speedup on Stephanie's machine.


  • wtf/RefCounted.h: (WTF::RefCounted::deref): Don't modify m_refCount if we're just going to delete the object anyway. Also, use a simple == test, which might be faster than <= on some hardware.
09:40 Changeset [30041] by darin@apple.com
  • 4 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Sam.

Test results match Gecko with very few obscure exceptions that seem to be
bugs in Gecko.

Test: fast/js/array-functions-non-arrays.html

  • kjs/array_object.cpp: (KJS::arrayProtoFuncConcat): Removed DontEnum and DontDelete from the call to set length. (KJS::arrayProtoFuncPop): Ditto. Also added missing call to deleteProperty, which is not needed for real arrays, but is needed for non-arrays. (KJS::arrayProtoFuncPush): Ditto. (KJS::arrayProtoFuncShift): Ditto. (KJS::arrayProtoFuncSlice): Ditto. (KJS::arrayProtoFuncSort): Removed incorrect call to set length when the array has no elements. (KJS::arrayProtoFuncSplice): Removed DontEnum and DontDelete from the call to set length. (KJS::arrayProtoFuncUnShift): Ditto. Also added a check for 0 arguments to make behavior match the specification in that case.
  • kjs/nodes.cpp: (KJS::ArrayNode::evaluate): Removed DontEnum and DontDelete from the call to set length.

LayoutTests:

Reviewed by Sam.

  • fast/js/array-functions-non-arrays-expected.txt: Added.
  • fast/js/array-functions-non-arrays.html: Added.
  • fast/js/resources/array-functions-non-arrays.js: Added.
09:33 Changeset [30040] by darin@apple.com
  • 17 edits in trunk

JavaScriptCore:

Reviewed by Sam.

  • replace calls to put to set up properties with calls to putDirect, to prepare for a future change where put won't take attributes any more, and for a slight performance boost
  • API/JSObjectRef.cpp: (JSObjectMakeConstructor): Use putDirect instead of put.
  • kjs/CommonIdentifiers.h: Removed lastIndex.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): Use putDirect instead of put.
  • kjs/array_object.cpp: (KJS::arrayProtoFuncConcat): Took out extra call to get length (unused). (KJS::ArrayObjectImp::ArrayObjectImp): Use putDirect instead of put.
  • kjs/error_object.cpp: (KJS::ErrorPrototype::ErrorPrototype): Use putDirect instead of put.
  • kjs/function.cpp: (KJS::Arguments::Arguments): Use putDirect instead of put. (KJS::PrototypeFunction::PrototypeFunction): Use putDirect instead of put.
  • kjs/function_object.cpp: (KJS::FunctionObjectImp::construct): Use putDirect instead of put.
  • kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): Use putDirect instead of put. (KJS::FuncExprNode::evaluate): Use putDirect instead of put.
  • kjs/regexp_object.cpp: (KJS::regExpProtoFuncCompile): Use setLastIndex instead of put(lastIndex). (KJS::RegExpImp::match): Get and set lastIndex by using m_lastIndex instead of calling get and put.
  • kjs/regexp_object.h: (KJS::RegExpImp::setLastIndex): Added.
  • kjs/string_object.cpp: (KJS::stringProtoFuncMatch): Use setLastIndex instead of put(lastIndex).

WebCore:

Reviewed by Sam.

  • replace calls to put to set up properties with calls to putDirect, to prepare for a future change where put won't take attributes any more, and for a slight performance boost
  • bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor): Use putDirect instead of put.
  • bindings/js/JSEventTargetBase.h: (WebCore::JSEventTargetPrototype::self): Ditto.
  • bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto.
  • bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item): Ditto.
08:01 Changeset [30039] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: fast/css/transition-color-unspecified.html

  • page/AnimationController.cpp: (WebCore::ImplicitAnimation::animate): Changed to use the value of the 'color' property in the source or destination style as the source or destination value of properties whose inital value is defined to be the computed value of 'color'.

LayoutTests:

Reviewed by Darin Adler.

  • fast/css/transition-color-unspecified.html: Added.
  • platform/mac/fast/css/transition-color-unspecified-expected.checksum: Added.
  • platform/mac/fast/css/transition-color-unspecified-expected.png: Added.
  • platform/mac/fast/css/transition-color-unspecified-expected.txt: Added.
07:46 Changeset [30038] by mitz@apple.com
  • 2 edits in trunk/WebCore

Build fix.

  • svg/svgtags.in:

02/05/08:

23:08 Changeset [30037] by oliver@apple.com
  • 2 edits in trunk/WebCore

Build fix -- touch generate-bindings to trigger regeneration of bindings

22:18 Changeset [30036] by mitz@apple.com
  • 224 edits in trunk/LayoutTests/platform/mac/svg/custom

Added the svn:mime-type property to PNGs that did not have it.

22:01 Changeset [30035] by oliver@apple.com
  • 66 edits in trunk

RS=Eric.

Re-enable foreignObject by default as it is needed for a number of
non-fO related SVG tests and none of the old known crashes occur
anymore.

20:36 Changeset [30034] by weinig@apple.com
  • 7 edits
    4 adds in trunk

JavaScriptCore:

Reviewed by Anders Carlsson.

Fix for http://bugs.webkit.org/show_bug.cgi?id=8080
NodeList (and other DOM lists) items are not enumeratable using for..in

WebCore:

Reviewed by Anders Carlsson.

Fix for http://bugs.webkit.org/show_bug.cgi?id=8080
NodeList (and other DOM lists) items are not enumeratable using for..in

  • Match Firefox when enumerating DOM interfaces with indexGetters (support for the array bracket, nodeList[0], notation) by including all the items in the list before the attributes and methods of the interface.

Test: fast/dom/domListEnumeration.html

  • ForwardingHeaders/kjs/PropertyNameArray.h: Added.
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customGetPropertyNames): Use the new custom method model.
  • bindings/js/JSHistoryCustom.cpp: (WebCore::JSHistory::customGetPropertyNames): ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Instead of just adding a declaration of getProperyNames and implementing the method in the Custom.cpp, move to a the model used by generated getOwnPropertySlot() and put() where the custom code is written in a separate customGetPropertyNames which returns a bool indicating whether to call up to the base class. This enables adding the list indexes to the PropertyNameArray for interfaces with indexGetters automatically.

LayoutTests:

Reviewed by Anders Carlsson.

Test for http://bugs.webkit.org/show_bug.cgi?id=8080
NodeList (and other DOM lists) items are not enumeratable using for..in

  • fast/dom/domListEnumeration-expected.txt: Added.
  • fast/dom/domListEnumeration.html: Added.
  • fast/dom/resources/domListEnumeration.js: Added.
18:13 Changeset [30033] by zimmermann@webkit.org
  • 1 edit
    10 adds in trunk/LayoutTests

Reviewed by Oliver.
Add new dynamic update tests, for SVGClipPathElement.

17:29 Changeset [30032] by weinig@apple.com
  • 9 edits
    3 adds in trunk

WebCore:

Reviewed by Darin Adler.

Fix for <rdar://problem/5726604>
dom-checker: deleting properties of the window object cross-domain should not be allowed

Fix flaw found while testing with dom-checker testing tool (http://code.google.com/p/dom-checker/).

Test: http/tests/security/cross-frame-access-delete.html

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::deleteProperty): Override deleteProperty to not delete cross-domain.
  • bindings/js/JSHistoryCustom.cpp: (WebCore::JSHistory::deleteProperty): ditto.
  • bindings/js/JSLocation.cpp: (WebCore::JSLocation::deleteProperty): ditto.
  • bindings/js/JSLocation.h:
  • bindings/scripts/CodeGeneratorJS.pm: Add deleteProperty declaration when CustomDeleteProperty is used.
  • page/DOMWindow.idl: Add CustomDeleteProperty extended attribute.
  • page/History.idl: ditto.

LayoutTests:

Reviewed by Darin Adler.

Test for <rdar://problem/5726604>
dom-checker: deleting properties of the window object cross-domain should not be allowed

  • http/tests/security/cross-frame-access-delete-expected.txt: Added.
  • http/tests/security/cross-frame-access-delete.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-delete-test.html: Added.
17:24 Changeset [30031] by mrowe@apple.com
  • 4 edits in trunk/WebKit/gtk

2008-02-05 Mark Rowe <mrowe@apple.com>

Reviewed by Alp Toker.

Fix warnings seen on the Gtk port by declaring variables and using constants of the correct types.

  • webkit/webkitwebbackforwardlist.cpp: (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_contains_item):
  • webkit/webkitwebhistoryitem.cpp:
  • webkit/webkitwebview.cpp:
17:16 Changeset [30030] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

Build fix. Don't override intermediate directory.

  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
16:57 Changeset [30029] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-05 Alp Toker <alp@atoker.com>

Rubber-stamped by Mark Rowe.

Fix a "missing sentinel in function call" warning by using NULL
instead of 0.

  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::caretBlinkFrequency):
15:09 Changeset [30028] by zimmermann@webkit.org
  • 5 edits
    30 adds in trunk

Reviewed by Oliver.
Fix dynamic updates of <circle> element's properties.

Added tests: svg/dynamic-updates/SVGCircleElement*

14:31 Changeset [30027] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Wx build fix. Add WebCore/plugins to the include path.

14:28 Changeset [30026] by zecke@webkit.org
  • 3 edits in trunk/WebKitTools

Build fix for Windows. willCloseFrame is a pure virtual and we are
forced to have an implementation.

This partially reverts r30014.

14:24 Changeset [30025] by mrowe@apple.com
  • 4 edits in tags/Safari-5525.7.2

Versioning.

14:23 Changeset [30024] by mrowe@apple.com
  • 4 edits in trunk/WebCore

2008-02-05 Mark Rowe <mrowe@apple.com>

Mac build fix. Update the Xcode project to follow a moved file,
and track a rename in two files that were missed earlier.

  • WebCore.xcodeproj/project.pbxproj:
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge canProvideDocumentSource]):
  • platform/mac/PlugInInfoStoreMac.mm: (WebCore::PluginInfoStore::pluginNameForMIMEType):
14:22 Changeset [30023] by mrowe@apple.com
  • 2 edits in tags/Safari-5525.7.2/WebKit/mac

Merge r30020.

13:57 Changeset [30022] by zimmermann@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Forgot to mention bug

13:56 Changeset [30021] by zimmermann@webkit.org
  • 6 edits
    25 adds in trunk

Reviewed by Holger.

Fix dynamic SVG DOM updates of <a> element's href property.

This commit also introduces a new SVG Tests framework: LayoutTests/svg/dynamic-updates
Its purpose is to provide dynamic updating tests for each SVG class & property, aka.
one test per property per class. As a first pass it's sufficient to add testcases for all
SVG*Element classes, and their properties - and only common-used base-class properties.

For SVGAElement - for example - it makes most sense to test scripting its parent
SVGURIReference object ('href' property) and its own property 'target'.

Adding tests to see - for example - if SVGAElement reacts on changes on ie. its parent
SVGExternalResourcesRequired interface, should really be done in a second pass.

All tests within the new framework are supposed to be created using make-js-tests-wrappers.

13:54 Changeset [30020] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Unreviewed build fix. Add missing #import.

13:53 Changeset [30019] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.7.2

New tag.

13:53 Changeset [30018] by mrowe@apple.com
  • 1 delete in tags/Safari-5525.72

Remove bogus tag.

13:52 Changeset [30017] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.72

New tag.

13:51 Changeset [30016] by justin.garcia@apple.com
  • 4 edits
    6 adds in trunk

WebCore:

Reviewed by Alexey Proskuryakov.

<rdar://problem/5685601> webkit-block-placeholder class on placeholders seems unnecessary (12317)

  • editing/CompositeEditCommand.cpp: (WebCore::createBlockPlaceholderElement): The khtml-block-placeholder class was needed when the editing code actively looked for <br>s of that type in order to handle them specially. That is no longer the case.
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply): Fixed a bug where an extra block would be inserted when hitting return inside an editable root held open by a placeholder <br> or '\n'. Added test cases for the bug and for the special case code that was incorrectly triggered to cause the bug.

LayoutTests:

Reviewed by Alexey Proskuryakov.


<rdar://problem/5685601> webkit-block-placeholder class on placeholders seems unnecessary (12317)

  • editing/inserting/5685601-1-expected.txt: Added.
  • editing/inserting/5685601-1.html: Added.
  • editing/inserting/5685601-2-expected.txt: Added.
  • editing/inserting/5685601-2.html: Added.
  • editing/inserting/5685601-3-expected.txt: Added.
  • editing/inserting/5685601-3.html: Added.
13:46 Changeset [30015] by mrowe@apple.com
  • 20 edits
    6 moves in trunk

2008-02-05 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Anders Carlsson.

Part one of http://bugs.webkit.org/show_bug.cgi?id=16924.
Shared PluginDatabase, PluginInfoStore and PluginPackage implementations.

Remove the Win suffix on several plugin-related classes that will
soon be refactored to be more portable.

12:47 Changeset [30014] by zecke@webkit.org
  • 14 edits in trunk

WebKitTools/
2008-02-05 Holger Freyther <zecke@selfish.org>

Reviewed by Darin.

In http://bugs.webkit.org/show_bug.cgi?id=16853 it was identified that the
the output of the willCloseFrame and didClearWindowObject FrameLoadDelegate
depends on the order the tests are executed.

Propose to remove willCloseFrame and didlCearWindowObject output from the
FrameLoadDelegate and update the test results. The output of didClearWindowObject
is not interesting for any of the current tests and we have other ways to find
out if a frame was closed or not.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:
  • DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didClearWindowObject):
  • DumpRenderTree/win/FrameLoadDelegate.h:

LayoutTest:
2008-02-05 Holger Freyther <zecke@selfish.org>

Reviewed by Darin.

In http://bugs.webkit.org/show_bug.cgi?id=16853 it was identified that the
the output of the willCloseFrame and didClearWindowObject FrameLoadDelegate
depends on the order the tests are executed.

Propose to remove willCloseFrame and didlCearWindowObject output from the
FrameLoadDelegate and update the test results. The output of didClearWindowObject
is not interesting for any of the current tests and we have other ways to find
out if a frame was closed or not.

  • http/tests/loading/bad-scheme-subframe-expected.txt:
  • http/tests/loading/bad-server-subframe-expected.txt:
  • http/tests/loading/basic-expected.txt:
  • http/tests/loading/empty-subframe-expected.txt:
  • http/tests/loading/gmail-assert-on-load-expected.txt:
  • http/tests/loading/onload-vs-immediate-refresh-expected.txt:
  • http/tests/loading/slow-parsing-subframe-expected.txt:
  • platform/mac/http/tests/loading/simple-subframe-expected.txt:
  • webarchive/loading/test-loading-archive-expected.txt:
11:52 Changeset [30013] by ap@webkit.org
  • 3 edits
    2 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=17158
Setting innerHTML in a detached XHTML element doesn't use the right namespace

Test: fast/dom/innerHTML-detached-element.xhtml

  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::XMLTokenizer): Take parent element namespace into account.
11:45 Changeset [30012] by mrowe@apple.com
  • 4 edits in tags/Safari-5525.7.1

Versioning.

11:44 Changeset [30011] by mrowe@apple.com
  • 8 edits in tags/Safari-5525.7.1

Merge r30003.

11:41 Changeset [30010] by mrowe@apple.com
  • 2 edits in tags/Safari-5525.7.1/WebKit/mac

Merge r29869.

11:32 Changeset [30009] by antti@apple.com
  • 7 edits
    6 adds in trunk

WebCore:

Reviewed by Geoff.


Fix <rdar://problem/5698200>
eBay photo uploading hangs and causes slow script warning to pop up


In a case like this


var f = window.parent.parentFunction;
document.domain = document.domain; this makes window.parent inaccessible
f();


Firefox allows parentFunction to access parents properties. Match this behavior.


In a domain security check against the dynamic global object fails for the specific reason that one of
the frames has written to the document.domain property and another has not (but they match otherwise),
then recheck against the lexical global object.

Test: http/tests/security/cross-frame-access-callback-explicit-domain-ALLOW.html

http/tests/security/cross-frame-access-callback-explicit-domain-DENY.html

  • bindings/js/kjs_window.cpp: (KJS::Window::allowsAccessFrom): (KJS::Window::printErrorMessage):
  • bindings/js/kjs_window.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldAllowNavigation):
  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canAccess):
  • platform/SecurityOrigin.h: (WebCore::SecurityOrigin::):

LayoutTests:

Reviewed by Geoff.


Test for <rdar://problem/5698200>
eBay photo uploading hangs and causes slow script warning to pop up

  • http/tests/security/cross-frame-access-callback-explicit-domain-ALLOW-expected.txt: Added.
  • http/tests/security/cross-frame-access-callback-explicit-domain-ALLOW.html: Added.
  • http/tests/security/cross-frame-access-callback-explicit-domain-DENY-expected.txt: Added.
  • http/tests/security/cross-frame-access-callback-explicit-domain-DENY.html: Added.
  • http/tests/security/resources/cross-frame-iframe-callback-explicit-domain-ALLOW.html: Added.
  • http/tests/security/resources/cross-frame-iframe-callback-explicit-domain-DENY.html: Added.
11:24 Changeset [30008] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.7.1

New tag.

11:18 Changeset [30007] by aroben@apple.com
  • 3 edits in trunk/WebCore

Remove an unused member from Document

Reviewed by Mitz.

  • dom/Document.cpp: (WebCore::Document::recalcStyleSelector): There's no need to take m_printSheet into account anymore as it's never anything but the null string.
  • dom/Document.h: Removed m_printSheet and methods relating to it.
10:36 Changeset [30006] by darin@apple.com
  • 2 edits in trunk/WebKit/win

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15248
<rdar://problem/5497032> Can not enter accented characters using alt-numeric keypad (take two)

  • WebView.cpp: (WebViewWndProc): KeyUp messages need to be translated, too.
09:31 Changeset [30005] by mitz@apple.com
  • 7 edits in trunk

WebCore:

Reviewed by Darin Adler.

  • WebCore part of <rdar://problem/5724303> Should implement writing direction shortcuts
  • WebCore.base.exp: Added Editor::setBaseWritingDirection() and Frame::baseWritingDirectionForSelectionStart().
  • page/mac/WebCoreFrameBridge.h: Removed -baseWritingDirectionForSelectionStart.
  • page/mac/WebCoreFrameBridge.mm: Ditto.

WebKit/mac:

Reviewed by Darin Adler.

  • WebKit part of <rdar://problem/5724303> Should implement writing direction shortcuts

The key bindings are Command-Control-left arrow and
Command-Control-right arrow. To match AppKit, the bindings are enabled
only when certain user defaults are set.

  • WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call Frame::baseWritingDirectionForSelectionStart() and Editor::setBaseWritingDirection() directly. (-[WebHTMLView changeBaseWritingDirection:]): Ditto. (writingDirectionKeyBindingsEnabled): Added. (-[WebHTMLView _changeBaseWritingDirectionTo:]): Added this helper method. (-[WebHTMLView changeBaseWritingDirectionToLTR:]): Added. (-[WebHTMLView changeBaseWritingDirectionToRTL:]): Added.
  • WebView/WebView.mm:
09:01 Changeset [30004] by mrowe@apple.com
  • 6 edits in trunk/WebKitSite

Update WordPress to 2.3.3 which includes security fixes.

07:52 Changeset [30003] by mrowe@apple.com
  • 8 edits in trunk

Update versioning to support the mysterious future.

Reviewed by Oliver Hunt.

  • Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
02:42 Changeset [30002] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix the wxWidget Mac build by avoiding using ICU functions that were added after ICU 3.2.

  • editing/SmartReplaceICU.cpp:

(WebCore::addAllCodePoints): Implement a replacement for uset_addAllCodePoints.
(WebCore::getSmartSet): Use addAllCodePoints instead of uset_addAllCodePoints.

01:56 Applications using WebKit edited by ap@webkit.org
Added Microsoft products. (diff)
01:34 Changeset [30001] by ap@webkit.org
  • 9 edits
    10 deletes in trunk

Pretend that r29998 never happened.

00:20 Changeset [30000] by mrowe@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

30,000!

00:19 Changeset [29999] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Workaround for http://bugs.webkit.org/show_bug.cgi?id=16842
Bug 16842: Hang in DRT in leaks mode due to signal handler doing unsafe things

Reviewed by Oliver Hunt.

Don't install the signal handler unless we are running the pixel tests.
It is currently only used to restore the color profile, but by catching
signals we can trigger a deadlock in DRT while running leak tests.
The deadlock is tracked by http://bugs.webkit.org/show_bug.cgi?id=16842,
and a more complete fix will need to be developed to address this for
pixel tests as well.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(dumpRenderTree):

00:16 Changeset [29998] by mrowe@apple.com
  • 9 edits
    10 adds in trunk

2008-02-04 Matt Perry <mpComplete@gmail.com>

Reviewed by Darin Adler.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14959
No back forward entry added for pages created in javascript

A new HistoryItem is created for calls to Document::open. Calls to
Document::write save the written data to a SharedBuffer that is also
stored on the HistoryItem. When the user navigates back to a
HistoryItem that has a valid buffer, that data is used for the page
content.

Tests: http/tests/navigation/document-open-adds-history-item.html

http/tests/navigation/document-open-delayed-adds-history-item.html
http/tests/navigation/document-open-new-window-adds-history-item.html
http/tests/navigation/document-open-replace-no-history-item.html

  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open):
  • dom/Document.cpp: (WebCore::Document::open): (WebCore::Document::write): (WebCore::Document::clear):
  • dom/Document.h:
  • history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem): (WebCore::HistoryItem::substituteData): (WebCore::HistoryItem::setSubstituteData):
  • history/HistoryItem.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::didExplicitOpen): (WebCore::FrameLoader::load): (WebCore::FrameLoader::reloadAllowingStaleData): (WebCore::FrameLoader::reload): (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent): (WebCore::FrameLoader::loadItem):
  • loader/FrameLoader.h:

2008-02-04 Matt Perry <mpComplete@gmail.com>

Reviewed by Darin Adler.

Test cases for fix to http://bugs.webkit.org/show_bug.cgi?id=14959
No back forward entry added for pages created in javascript.

  • http/tests/navigation/document-open-adds-history-item-expected.txt: Added.
  • http/tests/navigation/document-open-adds-history-item.html: Added.
  • http/tests/navigation/document-open-delayed-adds-history-item-expected.txt: Added.
  • http/tests/navigation/document-open-delayed-adds-history-item.html: Added.
  • http/tests/navigation/document-open-new-window-adds-history-item-expected.txt: Added.
  • http/tests/navigation/document-open-new-window-adds-history-item.html: Added.
  • http/tests/navigation/document-open-replace-no-history-item-expected.txt: Added.
  • http/tests/navigation/document-open-replace-no-history-item.html: Added.
Note: See TracTimeline for information about the timeline view.