- Feb 08, 2008
-
-
alp@webkit.org authored
Rubber-stamped by Maciej. Bump autoconf CAIRO_REQUIRED_VERSION up to 1.4. * configure.ac: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30106 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rdar://problem/5731773oliver@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
timothy@apple.com authored
<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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30104 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30103 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30102 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kevino@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
alp@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
alp@webkit.org authored
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): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30098 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
<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): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
weinig@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30096 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
Reviewed by darin * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::type): (WebCore::HTMLButtonElement::parseMappedAttribute): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30093 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
* bindings/scripts/CodeGeneratorCOM.pm: Touch this to force the COM bindings to rebuild. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30091 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
alp@webkit.org authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30090 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
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: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30088 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
oliver@apple.com authored
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 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30087 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- Feb 07, 2008
-
-
rdar://problem/5292433adachan@apple.com authored
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: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30086 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rdar://problem/5292433adachan@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30085 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
adachan@apple.com authored
wkSetClientCertificateInSSLProperties, wkCanAccessCFURLRequestHTTPBodyParts, wkCFURLRequestCopyHTTPRequestBodyParts, wkCFURLRequestSetHTTPRequestBodyParts Rubber-stamped by Steve. * win/include/WebKitSystemInterface/WebKitSystemInterface.h: * win/lib/WebKitSystemInterface.lib: * win/lib/WebKitSystemInterface_debug.lib: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30084 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
dsmith@webkit.org authored
Update prototype.js to 1.6.0.2 to be a bit less unfair in comparative benchmarking. * perf/slickspeed/frameworks/prototype.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30083 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
* platform/SharedBuffer.cpp: Removed a stub implementation of createWithContentsOfFile, now that each platform has its own stub. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
<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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
* platform/gtk/FileSystemGtk.cpp: Added a missing #include. * platform/qt/FileSystemQt.cpp: Ditto. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30080 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30079 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rdar://5555260aroben@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30077 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Reviewed by Darin. * platform/KURL.cpp: (WebCore::KURL::isLocalFile): Use equalIgnoringCase instead of ==. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30075 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
* sunspider: add an error message when ./tests/LIST is not found git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
dsmith@webkit.org authored
Fix a duplicate selector in the test. * perf/slickspeed/selectors.list: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
dsmith@webkit.org authored
Added :nth-child and :last-child to the list of selectors to test. * perf/slickspeed/selectors.list: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30071 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30070 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
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): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30069 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30068 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
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. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-