Timeline
Feb 8, 2008:
- 10:47 PM Changeset in webkit [30107] by
-
- 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:
- 9:44 PM Changeset in webkit [30106] by
-
- 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:
- 9:17 PM Changeset in webkit [30105] by
-
- 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.
- 8:15 PM Changeset in webkit [30104] by
-
- 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.
- 5:13 PM Changeset in webkit [30103] by
-
- 3 edits2 adds in trunk
Reviewed by Oliver.
- fix http://bugs.webkit.org/show_bug.cgi?id=17247 Labelled continue/break can fail in some cases
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:
- test for http://bugs.webkit.org/show_bug.cgi?id=17247 Labelled continue/break can fail in some cases
- fast/js/continue-break-multiple-labels-expected.txt: Added.
- fast/js/continue-break-multiple-labels.html: Added.
- 5:06 PM Changeset in webkit [30102] by
-
- 7 edits3 adds in trunk
Reviewed by Eric.
- fix http://bugs.webkit.org/show_bug.cgi?id=15003 Function.prototype.constructor should not be DontDelete/ReadOnly (Acid3 bug)
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.
- fix http://bugs.webkit.org/show_bug.cgi?id=15003 Function.prototype.constructor should not be DontDelete/ReadOnly (Acid3 bug)
Test: fast/js/constructor-attributes.html
- bindings/scripts/CodeGeneratorJS.pm: Remove unwanted attributes from "constructor".
LayoutTests:
Reviewed by Eric.
- test for http://bugs.webkit.org/show_bug.cgi?id=15003 Function.prototype.constructor should not be DontDelete/ReadOnly (Acid3 bug)
- fast/js/constructor-attributes-expected.txt: Added.
- fast/js/constructor-attributes.html: Added.
- fast/js/resources/constructor-attributes.js: Added.
- 4:07 PM Changeset in webkit [30101] by
-
- 3 edits2 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.
- 3:35 PM Changeset in webkit [30100] by
-
- 2 edits in trunk/WebCore
wx port build fix.
- 3:06 PM Changeset in webkit [30099] by
-
- 1 edit in trunk/WebCore/ChangeLog
ChangeLog entry tweak: crasher affects debug, not release builds
- 3:04 PM Changeset in webkit [30098] by
-
- 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):
- 2:44 PM Changeset in webkit [30097] by
-
- 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 PM Changeset in webkit [30096] by
-
- 4 edits1 copy4 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 AM Changeset in webkit [30095] by
-
- 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):
- 8:51 AM Changeset in webkit [30094] by
-
- 2 edits in trunk/WebKitSite
- perf/slickspeed/config.ini: Fixed version number.
- 8:47 AM Changeset in webkit [30093] by
-
- 2 edits1 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.
- 8:24 AM Changeset in webkit [30092] by
-
- 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:
- 8:08 AM Changeset in webkit [30091] by
-
- 2 edits in trunk/WebCore
Windows build fix after r30088
- bindings/scripts/CodeGeneratorCOM.pm: Touch this to force the COM bindings to rebuild.
- 2:41 AM Changeset in webkit [30090] by
-
- 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.
- 2:35 AM Changeset in webkit [30089] by
-
- 31 edits2 copies27 adds in trunk
WebCore:
Reviewed by Eric.
- fix http://bugs.webkit.org/show_bug.cgi?id=3492 TreeWalker implementation needs to be fixed (affects Acid3)
- fix http://bugs.webkit.org/show_bug.cgi?id=4714 NodeIterator does not handle exceptions from the filter function (affects Acid3)
- fix http://bugs.webkit.org/show_bug.cgi?id=4716 NodeIterator will crash if the filter function removes the current node from the document
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.
- test for http://bugs.webkit.org/show_bug.cgi?id=4714 NodeIterator does not handle exceptions from the filter function (affects Acid3)
- 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.
- 1:04 AM Changeset in webkit [30088] by
-
- 18 edits12 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:
Feb 7, 2008:
- 11:18 PM Changeset in webkit [30087] by
-
- 5 edits in trunk
Kimmo Kinnunen <Kimmo Kinnunen>
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
- 10:36 PM Changeset in webkit [30086] by
-
- 7 edits1 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:
- 10:33 PM Changeset in webkit [30085] by
-
- 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.
- 10:29 PM Changeset in webkit [30084] by
-
- 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:
- 10:01 PM Changeset in webkit [30083] by
-
- 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:
- 3:54 PM Changeset in webkit [30082] by
-
- 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.
- 3:34 PM Changeset in webkit [30081] by
-
- 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.
- 3:29 PM Changeset in webkit [30080] by
-
- 3 edits in trunk/WebCore
Qt and GTK+ build fixes
- platform/gtk/FileSystemGtk.cpp: Added a missing #include.
- platform/qt/FileSystemQt.cpp: Ditto.
- 3:19 PM Changeset in webkit [30079] by
-
- 4 edits2 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.
- 3:19 PM Changeset in webkit [30078] by
-
- 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.
- 3:18 PM Changeset in webkit [30077] by
-
- 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.
- 3:18 PM Changeset in webkit [30076] by
-
- 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):
- 3:17 PM Changeset in webkit [30075] by
-
- 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 ==.
- 2:35 PM Changeset in webkit [30074] by
-
- 1 copy in branches/Safari-3-1-branch
New branch.
- 2:10 PM Changeset in webkit [30073] by
-
- 2 edits in trunk/SunSpider
Reviewed by Sam.
- sunspider: add an error message when ./tests/LIST is not found
- 1:32 PM Changeset in webkit [30072] by
-
- 2 edits in trunk/WebKitSite
Rubber stamped by Mark Rowe
Fix a duplicate selector in the test.
- perf/slickspeed/selectors.list:
- 1:19 PM Changeset in webkit [30071] by
-
- 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 PM wxWebKit edited by
- (diff)
- 12:22 PM wxWebKit created by
- 12:20 PM WikiStart edited by
- add wx port to wiki (diff)
- 12:14 PM Changeset in webkit [30070] by
-
- 2 adds in trunk/LayoutTests
- 12:13 PM Changeset in webkit [30069] by
-
- 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 AM Changeset in webkit [30068] by
-
- 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.
- 9:01 AM Changeset in webkit [30067] by
-
- 3 edits4 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.
- 8:59 AM Changeset in webkit [30066] by
-
- 3 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix http://bugs.webkit.org/show_bug.cgi?id=17194 Changing text to bold changes font family
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.
- test for http://bugs.webkit.org/show_bug.cgi?id=17194 Changing text to bold changes font family
- 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.
- 7:06 AM Changeset in webkit [30065] by
-
- 4 edits2 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.
- 5:59 AM Changeset in webkit [30064] by
-
- 2 edits in trunk/WebKitTools
Reviewed by Alexey Proskuryakov.
Fixed two minor typos in the --root option, to get it working.
- Scripts/run-sunspider:
- Actually assign the function argument to our local variable.
- Actually set the $root variable, so we don't try to build later.
- 2:08 AM Changeset in webkit [30063] by
-
- 2 edits2109 moves2086 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.