jianli@chromium.org [Mon, 28 Sep 2009 23:56:42 +0000 (23:56 +0000)]
Do not add platform-specific methods to cross-platform header
FileSystem.h per Darin's feedback for 29109.
https://bugs.webkit.org/show_bug.cgi?id=29830
Reviewed by David Levin.
* platform/FileSystem.h:
* platform/chromium/DragDataChromium.cpp:
(WebCore::DragData::asURL):
* platform/chromium/FileSystemChromium.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48846
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 23:33:25 +0000 (23:33 +0000)]
2009-09-28 Dumitru Daniliuc <dumi@chromium.org>
Reviewed by Dimitri Glazkov.
Register Chromium's VFSs with a proper sqlite3_io_methods
finder. This should only affect the POSIX implementation. The
Windows change is included for consistency and in case sqlite
starts using something similar in its Windows VFS in the future.
https://bugs.webkit.org/show_bug.cgi?id=29743
* platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
(WebCore::SQLiteFileSystem::registerSQLiteVFS):
* platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp:
(WebCore::SQLiteFileSystem::registerSQLiteVFS):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48845
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 23:25:43 +0000 (23:25 +0000)]
2009-09-28 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Simon Hausmann.
[Qt] Update the Skipped list after adding XSLT support.
https://bugs.webkit.org/show_bug.cgi?id=29817
Remove the tests that are passing now and skip these that are not,
with a reason of failure for each of them.
* platform/qt/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48844
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Mon, 28 Sep 2009 22:58:47 +0000 (22:58 +0000)]
2009-09-28 Alex Milowski <alex@milowski.com>
<http://webkit.org/b/29098> Update to MathML project webpage
Reviewed by David Kilzer.
Updated MathML project page and added link to Wiki page.
* projects/mathml/index.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48843
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 22:50:03 +0000 (22:50 +0000)]
2009-09-28 Eric Seidel <eric@webkit.org>
Reviewed by Simon Fraser.
11 transforms/3d tests failing on the Leopard Debug bot after r48833
https://bugs.webkit.org/show_bug.cgi?id=29828
Leopard has HW compositing disabled until rdar://problem/7228836 can be fixed.
So skip tests which depend on it being enabled per Simon's request.
* platform/mac-leopard/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48842
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
japhet@chromium.org [Mon, 28 Sep 2009 22:25:52 +0000 (22:25 +0000)]
2009-09-28 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
Change the V8 bindings' handling of window.toString(),
so we return [object DOMWindow] (like JSC), not [object global].
https://bugs.webkit.org/show_bug.cgi?id=29742
This will fix a couple of Chromium port test failures and enable us to
use the default expectations for a bunch more.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48841
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Mon, 28 Sep 2009 22:23:10 +0000 (22:23 +0000)]
Windows build fix: added new exports.
Patch by Geoffrey Garen <ggaren@apple.com> on 2009-09-28
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48840
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 28 Sep 2009 22:16:09 +0000 (22:16 +0000)]
Roll out r48825. It causes build failures by calling an undefined function from within RefPtr.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48839
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
japhet@chromium.org [Mon, 28 Sep 2009 22:06:52 +0000 (22:06 +0000)]
2009-09-28 Nate Chapin <japhet@chromium.org>
Rubber stamped by David Levin.
Chromium build fix, add back in #include of V8Proxy.h in V8WebKitPointConstructor.cpp.
* bindings/v8/custom/V8WebKitPointConstructor.cpp: Re-include V8Proxy.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48838
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Mon, 28 Sep 2009 22:06:19 +0000 (22:06 +0000)]
Windows build fix: removed exports that no longer exist.
Patch by Geoffrey Garen <ggaren@apple.com> on 2009-09-28
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48837
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Mon, 28 Sep 2009 21:45:58 +0000 (21:45 +0000)]
NotNullPassRefPtr: smart pointer optimized for passing references that are not null
https://bugs.webkit.org/show_bug.cgi?id=29822
Patch by Geoffrey Garen <ggaren@apple.com> on 2009-09-28
Reviewed by Darin Adler.
JavaScriptCore:
Added NotNullPassRefPtr, and deployed it in all places that initialize
JavaScript objects.
2.2% speedup on bench-allocate-nonretained.js.
* API/JSCallbackConstructor.cpp:
(JSC::JSCallbackConstructor::JSCallbackConstructor):
* API/JSCallbackConstructor.h:
* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::JSCallbackObject::JSCallbackObject):
* JavaScriptCore.exp:
* bytecode/CodeBlock.h:
(JSC::CodeBlock::addFunctionDecl):
(JSC::CodeBlock::addFunctionExpr):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::ArrayConstructor):
* runtime/ArrayConstructor.h:
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::ArrayPrototype):
* runtime/ArrayPrototype.h:
* runtime/BooleanConstructor.cpp:
(JSC::BooleanConstructor::BooleanConstructor):
* runtime/BooleanConstructor.h:
* runtime/BooleanObject.cpp:
(JSC::BooleanObject::BooleanObject):
* runtime/BooleanObject.h:
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::BooleanPrototype):
* runtime/BooleanPrototype.h:
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::DateConstructor):
* runtime/DateConstructor.h:
* runtime/DateInstance.cpp:
(JSC::DateInstance::DateInstance):
* runtime/DateInstance.h:
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::DatePrototype):
* runtime/DatePrototype.h:
* runtime/ErrorConstructor.cpp:
(JSC::ErrorConstructor::ErrorConstructor):
* runtime/ErrorConstructor.h:
* runtime/ErrorInstance.cpp:
(JSC::ErrorInstance::ErrorInstance):
* runtime/ErrorInstance.h:
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::ErrorPrototype):
* runtime/ErrorPrototype.h:
* runtime/FunctionConstructor.cpp:
(JSC::FunctionConstructor::FunctionConstructor):
* runtime/FunctionConstructor.h:
* runtime/FunctionPrototype.cpp:
(JSC::FunctionPrototype::FunctionPrototype):
* runtime/FunctionPrototype.h:
* runtime/GlobalEvalFunction.cpp:
(JSC::GlobalEvalFunction::GlobalEvalFunction):
* runtime/GlobalEvalFunction.h:
* runtime/InternalFunction.cpp:
(JSC::InternalFunction::InternalFunction):
* runtime/InternalFunction.h:
(JSC::InternalFunction::InternalFunction):
* runtime/JSActivation.cpp:
(JSC::JSActivation::JSActivation):
* runtime/JSActivation.h:
(JSC::JSActivation::JSActivationData::JSActivationData):
* runtime/JSArray.cpp:
(JSC::JSArray::JSArray):
* runtime/JSArray.h:
* runtime/JSByteArray.cpp:
(JSC::JSByteArray::JSByteArray):
* runtime/JSByteArray.h:
* runtime/JSFunction.cpp:
(JSC::JSFunction::JSFunction):
* runtime/JSFunction.h:
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::JSGlobalObject):
* runtime/JSONObject.h:
(JSC::JSONObject::JSONObject):
* runtime/JSObject.h:
(JSC::JSObject::JSObject):
(JSC::JSObject::setStructure):
* runtime/JSVariableObject.h:
(JSC::JSVariableObject::JSVariableObject):
* runtime/JSWrapperObject.h:
(JSC::JSWrapperObject::JSWrapperObject):
* runtime/MathObject.cpp:
(JSC::MathObject::MathObject):
* runtime/MathObject.h:
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::NativeErrorConstructor):
* runtime/NativeErrorConstructor.h:
* runtime/NativeErrorPrototype.cpp:
(JSC::NativeErrorPrototype::NativeErrorPrototype):
* runtime/NativeErrorPrototype.h:
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::NumberConstructor):
* runtime/NumberConstructor.h:
* runtime/NumberObject.cpp:
(JSC::NumberObject::NumberObject):
* runtime/NumberObject.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::NumberPrototype):
* runtime/NumberPrototype.h:
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::ObjectConstructor):
* runtime/ObjectConstructor.h:
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::ObjectPrototype):
* runtime/ObjectPrototype.h:
* runtime/PropertyNameArray.h:
(JSC::PropertyNameArrayData::setCachedPrototypeChain):
* runtime/PrototypeFunction.cpp:
(JSC::PrototypeFunction::PrototypeFunction):
* runtime/PrototypeFunction.h:
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::RegExpConstructor):
* runtime/RegExpConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::RegExpObject):
* runtime/RegExpObject.h:
(JSC::RegExpObject::RegExpObjectData::RegExpObjectData):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::RegExpPrototype):
* runtime/RegExpPrototype.h:
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::StringConstructor):
* runtime/StringConstructor.h:
* runtime/StringObject.cpp:
(JSC::StringObject::StringObject):
* runtime/StringObject.h:
* runtime/StringObjectThatMasqueradesAsUndefined.h:
(JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
* runtime/StringPrototype.cpp:
(JSC::StringPrototype::StringPrototype):
* runtime/StringPrototype.h:
* wtf/PassRefPtr.h:
(WTF::NotNullPassRefPtr::NotNullPassRefPtr):
(WTF::NotNullPassRefPtr::~NotNullPassRefPtr):
(WTF::NotNullPassRefPtr::get):
(WTF::NotNullPassRefPtr::clear):
(WTF::NotNullPassRefPtr::releaseRef):
(WTF::NotNullPassRefPtr::operator*):
(WTF::NotNullPassRefPtr::operator->):
(WTF::NotNullPassRefPtr::operator!):
(WTF::NotNullPassRefPtr::operator UnspecifiedBoolType):
* wtf/RefPtr.h:
(WTF::RefPtr::RefPtr):
(WTF::operator==):
WebCore:
Added NotNullPassRefPtr, and deployed it in all places that initialize
JavaScript objects.
* bindings/js/DOMObjectWithSVGContext.h:
(WebCore::DOMObjectWithSVGContext::DOMObjectWithSVGContext):
* bindings/js/JSDOMBinding.cpp:
(WebCore::cacheDOMStructure):
* bindings/js/JSDOMBinding.h:
(WebCore::DOMObject::DOMObject):
(WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
(WebCore::DOMConstructorObject::DOMConstructorObject):
(WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
* bindings/js/JSDOMGlobalObject.h:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::JSDOMWindowBase):
* bindings/js/JSDOMWindowBase.h:
* bindings/js/JSHTMLAllCollection.h:
(WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
* bindings/js/JSInspectedObjectWrapper.cpp:
(WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
* bindings/js/JSInspectedObjectWrapper.h:
* bindings/js/JSInspectorCallbackWrapper.cpp:
(WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
* bindings/js/JSInspectorCallbackWrapper.h:
* bindings/js/JSQuarantinedObjectWrapper.cpp:
(WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
* bindings/js/JSQuarantinedObjectWrapper.h:
* bindings/js/JSWorkerContextBase.cpp:
(WebCore::JSWorkerContextBase::JSWorkerContextBase):
* bindings/js/JSWorkerContextBase.h:
* bindings/scripts/CodeGeneratorJS.pm:
* bridge/runtime_object.cpp:
(JSC::RuntimeObjectImp::RuntimeObjectImp):
* bridge/runtime_object.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48836
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 21:38:08 +0000 (21:38 +0000)]
2009-09-28 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Simon Hausmann.
[Qt] Add the expected result for the fast/xsl/document-function test.
https://bugs.webkit.org/show_bug.cgi?id=29817
* platform/qt/fast/xsl/document-function-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48835
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 21:30:53 +0000 (21:30 +0000)]
2009-09-28 Nate Chapin <japhet@chromium.org>
Reviewed by Dimitri Glazkov.
Allow V8 to handle x/y parameters in a WebKitPoint constructor.
https://bugs.webkit.org/show_bug.cgi?id=29823
Fixes V8's handling of LayoutTests/fast/dom/Window/webkitConvertPoint.html
* bindings/v8/custom/V8WebKitPointConstructor.cpp: Allow for x/y parameters in constructor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48834
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 21:22:50 +0000 (21:22 +0000)]
2009-09-25 Eric Seidel <eric@webkit.org>
Reviewed by Simon Fraser.
REGRESSION: media/video-pause-empty-events.html is occasionally timing out on bots
https://bugs.webkit.org/show_bug.cgi?id=28624
No longer skip media tests now that we're disabling hardware compositing instead.
Add leopard-specific results for 2 tests expected to fail with HW compositing disabled.
* platform/mac-leopard/Skipped:
* platform/mac-leopard/fast/media/mq-transform-02-expected.checksum: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-02-expected.checksum.
* platform/mac-leopard/fast/media/mq-transform-02-expected.png: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-02-expected.png.
* platform/mac-leopard/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-02-expected.txt.
* platform/mac-leopard/fast/media/mq-transform-03-expected.checksum: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-03-expected.checksum.
* platform/mac-leopard/fast/media/mq-transform-03-expected.png: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-03-expected.png.
* platform/mac-leopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/mac-tiger/fast/media/mq-transform-03-expected.txt.
2009-09-27 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Darin Adler.
run-webkit-tests: Do not strip the metrics when there is no expected result for a test.
https://bugs.webkit.org/show_bug.cgi?id=29771
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48833
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 28 Sep 2009 20:57:52 +0000 (20:57 +0000)]
Fix the build by doing something approximating reasonableness in the Xcode project.
* WebCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48832
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 28 Sep 2009 20:55:38 +0000 (20:55 +0000)]
<rdar://problem/7240911> REGRESSION (r48586): Crash occurs when loading
a PDF
Reviewed by Anders Carlsson.
CGPDFObjectRef is not a CFTypeRef, and cannot be retained or released.
Its lifetime is managed by its container. Just use a Vector to store
CGPDFObjectRefs, relying on the CGPDFDocument to keep them alive.
* WebView/WebPDFDocumentExtras.mm:
(appendValuesInPDFNameSubtreeToVector):
(getAllValuesInPDFNameTree):
(web_PDFDocumentAllScripts):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48831
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 28 Sep 2009 20:42:15 +0000 (20:42 +0000)]
Hard dependency on SSE2 instruction set with JIT
https://bugs.webkit.org/show_bug.cgi?id=29779
Reviewed by Geoff Garen
Add floating point support checks to op_jfalse and op_jtrue, and
fix the logic for the slow case of op_add
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48830
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 20:41:56 +0000 (20:41 +0000)]
Prospective Tiger build fix.
Patch by Simon Hausmann <hausmann@webkit.org> on 2009-09-28
* WebCore.xcodeproj/project.pbxproj: Try to use unique IDs for the new files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48829
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Mon, 28 Sep 2009 20:33:41 +0000 (20:33 +0000)]
2009-09-28 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Timothy Hatcher.
Web Inspector: Add explicit frontend event for commit load.
https://bugs.webkit.org/show_bug.cgi?id=29814
* inspector/InspectorController.cpp:
(WebCore::InspectorController::didCommitLoad):
* inspector/InspectorFrontend.cpp:
(WebCore::InspectorFrontend::didCommitLoad):
* inspector/InspectorFrontend.h:
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMAgent.prototype._setDocument):
* inspector/front-end/inspector.js:
(WebInspector.addResource):
(WebInspector.didCommitLoad):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48828
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 20:30:52 +0000 (20:30 +0000)]
2009-09-28 Yaar Schnitman <yaar@chromium.org>
Reviewed by Dimitri Glazkov.
Chromium port - recognize we are being built independently
of chromium and look for dependencies under webkit/chromium rather
than chromium/src.
https://bugs.webkit.org/show_bug.cgi?id=29722
* JavaScriptCore.gyp/JavaScriptCore.gyp:
2009-09-28 Yaar Schnitman <yaar@chromium.org>
Reviewed by Dimitri Glazkov.
Chromium port - recognize we are being built independently
of chromium and look for dependencies under webkit/chromium rather
than chromium/src.
https://bugs.webkit.org/show_bug.cgi?id=29722
* WebCore.gyp/WebCore.gyp: See above. Also removed a few files from
the sources list, since they are not supposed to be built here.
2009-09-28 Yaar Schnitman <yaar@chromium.org>
Reviewed by Dimitri Glazkov.
https://bugs.webkit.org/show_bug.cgi?id=29722
* chromium/DEPS: Describes the chromium port's dependencies and
is used by gclient to fetch them.
* chromium/webkit.gyp: Currently only builds webcore but in
the future will also build the webkit api.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48827
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 20:11:36 +0000 (20:11 +0000)]
[Qt] Implement XSLT support with QtXmlPatterns.
https://bugs.webkit.org/show_bug.cgi?id=28303
Patch by Jakub Wieczorek <faw217@gmail.com> on 2009-09-28
Reviewed by Simon Hausmann.
JavaScriptCore:
* wtf/Platform.h: Add a WTF_USE_QXMLQUERY #define.
WebCore:
* GNUmakefile.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCoreSources.bkl:
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::setTransformSource):
* dom/Document.h:
(WebCore::Document::transformSource):
* dom/TransformSource.h: Added.
(WebCore::TransformSource::platformSource):
* dom/TransformSourceLibxslt.cpp: Added.
(WebCore::TransformSource::TransformSource): Wraps a libxml2 document.
(WebCore::TransformSource::~TransformSource):
* dom/TransformSourceQt.cpp: Added.
(WebCore::TransformSource::TransformSource): Wraps a plain string.
(WebCore::TransformSource::~TransformSource):
* dom/XMLTokenizerLibxml2.cpp:
(WebCore::XMLTokenizer::doEnd):
* dom/XMLTokenizerQt.cpp:
(WebCore::XMLTokenizer::doEnd):
(WebCore::XMLTokenizer::parseProcessingInstruction):
* xml/XSLStyleSheet.h:
(WebCore::XSLStyleSheet::sheetString):
* xml/XSLStyleSheetLibxslt.cpp:
(WebCore::XSLStyleSheet::document):
* xml/XSLStyleSheetQt.cpp: Added.
* xml/XSLTProcessor.h:
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::xmlDocPtrFromNode):
* xml/XSLTProcessorQt.cpp: Added.
(WebCore::XSLTMessageHandler::XSLTMessageHandler): A subclass of QAbstractMessageHandler.
(WebCore::XSLTMessageHandler::handleMessage): Forwards all processor messages to the Console.
(WebCore::XSLTProcessor::transformToString): Uses QXmlQuery.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48826
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 20:09:40 +0000 (20:09 +0000)]
2009-09-28 Yongjun Zhang <yongjun.zhang@nokia.com>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=28054
Use derefInNotNull() to work around winscw compiler forward declaration bug
regarding templated classes.
The compiler bug is reported at
https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812.
The change should be reverted when the above bug is fixed in winscw compiler.
Add parenthesis around (RefPtr::*UnspecifiedBoolType) to make winscw compiler
work with the default UnSpecifiedBoolType() operator, which removes the winscw hack.
* wtf/RefPtr.h:
(WTF::RefPtr::~RefPtr):
(WTF::RefPtr::clear):
(WTF::RefPtr::operator UnspecifiedBoolType):
2009-09-28 Yongjun Zhang <yongjun.zhang@nokia.com>
Reviewed by Eric Seidel.
Make JObjectWrapper::ref() and deref() public accessible to derefIfNull().
Will be reverted when the following winscw compiler bug is fixed.
https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812
* bridge/jni/jni_instance.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48825
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 18:57:31 +0000 (18:57 +0000)]
Remove __clear_cache which is an internal function of GCC
https://bugs.webkit.org/show_bug.cgi?id=28886
Patch by Gabor Loki <loki@inf.u-szeged.hu> on 2009-09-28
Reviewed by Simon Hausmann.
Although __clear_cache is exported from GCC, this is an internal
function. GCC makes no promises about it.
* jit/ExecutableAllocator.h:
(JSC::ExecutableAllocator::cacheFlush):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48824
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 18:51:10 +0000 (18:51 +0000)]
2009-09-28 Shinichiro Hamaji <hamaji@chromium.org>
Reviewed by Darin Adler.
Move message-port-multi.js from resources to script-tests
https://bugs.webkit.org/show_bug.cgi?id=29798
* fast/events/message-port-multi-expected.txt:
* fast/events/message-port-multi.html:
* fast/events/resources/message-port-multi.js: Removed.
* fast/events/script-tests/message-port-multi.js: Added.
(channel.port2.onmessage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48823
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 18:43:54 +0000 (18:43 +0000)]
2009-09-28 Andrew Scherkus <scherkus@chromium.org>
Reviewed by Eric Carlson.
Delegate implementation of rendererIsNeeded() for media control elements to RenderTheme.
https://bugs.webkit.org/show_bug.cgi?id=28689
Covered by LayoutTests/media/video-no-audio.html
* rendering/MediaControlElements.cpp: Removed subclass implementations of rendererIsNeeded().
(WebCore::MediaControlElement::rendererIsNeeded): Include calling shouldRenderMediaControlPart().
(WebCore::MediaControlInputElement::rendererIsNeeded): Include calling shouldRenderMediaControlPart().
* rendering/MediaControlElements.h:
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::shouldRenderMediaControlPart): New method. Contains logic moved from subclass implementations of rendererIsNeeded().
* rendering/RenderTheme.h:
* rendering/RenderThemeChromiumSkia.cpp:
(WebCore::RenderThemeChromiumSkia::shouldRenderMediaControlPart): Override to always render mute button.
* rendering/RenderThemeChromiumSkia.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48822
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jianli@chromium.org [Mon, 28 Sep 2009 18:13:00 +0000 (18:13 +0000)]
[chromium] DragData::asURL should return file URL.
https://bugs.webkit.org/show_bug.cgi?id=29109
Reviewed by David Levin.
Tested by LayoutTests/fast/events/drag-to-navigate.html.
* platform/FileSystem.h:
* platform/chromium/ChromiumBridge.h:
* platform/chromium/DragDataChromium.cpp:
(WebCore::DragData::asURL):
* platform/chromium/FileSystemChromium.cpp:
(WebCore::getAbsolutePath):
(WebCore::isDirectory):
(WebCore::filePathToURL):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48821
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dglazkov@chromium.org [Mon, 28 Sep 2009 17:57:17 +0000 (17:57 +0000)]
2009-09-28 Dimitri Glazkov <dglazkov@chromium.org>
Reviewed by David Levin.
[V8] Add a special case to handle index arguments, because we need to be
able to see if they're < 0.
https://bugs.webkit.org/show_bug.cgi?id=29810
Test: LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.html
* bindings/scripts/CodeGeneratorV8.pm: Added special case (matching CodeGeneratorJS.pm)
for index arguments.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48820
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 28 Sep 2009 17:55:40 +0000 (17:55 +0000)]
Fix an absolute path to somewhere in Oliver's machine to a relative path
for derived JSONObject.lut.h.
Reviewed by Oliver Hunt.
* JavaScriptCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48819
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 28 Sep 2009 16:34:53 +0000 (16:34 +0000)]
Extend the MediaWiki/KHTMLFixes.css workaround to cover older MediaWiki versions
https://bugs.webkit.org/show_bug.cgi?id=29792
Reviewed by Darin Adler.
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::setCSSStyleSheet): If site specific hacks are
enabled, check if the linked style sheet is one of two versions of the
MediaWiki KHTMLFixes.css. If so, remove the offending rule.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48818
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dglazkov@chromium.org [Mon, 28 Sep 2009 16:29:14 +0000 (16:29 +0000)]
2009-09-28 Dimitri Glazkov <dglazkov@chromium.org>
Reviewed by Adam Barth.
[V8] Fix an error in type logic in CodeGeneratorV8.pm, where
unsigned ints are accidentally used as signed.
https://bugs.webkit.org/show_bug.cgi?id=29810
Test: LayoutTests/fast/forms/textarea-maxlength.html
* bindings/scripts/CodeGeneratorV8.pm: Made sure "unsigned long" in IDL is
properly generates on "unsigned" return value.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48817
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 28 Sep 2009 16:14:18 +0000 (16:14 +0000)]
2009-09-25 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
ASSERTION FAILED: !repaintContainer || repaintContainer == this
https://bugs.webkit.org/show_bug.cgi?id=29755
It's possible for RenderObject::container() to return an object that is higher
in the hierarchy than the repaintContainer that is being used to repaint an
object. For example, this can happen when running an accelerated opacity
transition on an element with a position:absolute parent, and a position:absolute child.
In this case we need to detect when RenderObject::container() will skip over
repaintContainer, and in that case adjust the coords to shift into repaintContainer's space.
Test: compositing/repaint/opacity-between-absolute.html
* rendering/RenderBox.cpp:
(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::computeRectForRepaint):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::computeRectForRepaint):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::container):
* rendering/RenderObject.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48816
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 15:06:24 +0000 (15:06 +0000)]
Rename XSLStyleSheet.cpp to XSLStyleSheetLibxslt.cpp.
https://bugs.webkit.org/show_bug.cgi?id=28303
Patch by Jakub Wieczorek <faw217@gmail.com> on 2009-09-28
Reviewed by Simon Hausmann.
In preparation for adding XSLT support with QtXmlPatterns to the Qt
port, rename XSLStyleSheet.cpp to XSLStyleSheetLibxslt.cpp as we will
have our own implementation which most likely will not share any code
with the current one.
Additionally, fix some coding style issues.
* GNUmakefile.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* xml/XSLStyleSheet.cpp: Renamed to XSLStyleSheetLibxslt.cpp.
* xml/XSLStyleSheetLibxslt.cpp: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48815
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 14:45:12 +0000 (14:45 +0000)]
Prospective build fix for r48812.
Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2009-09-28
Forgot to remove the inline reset() implementation when reverting the indentation
changes in the file.
* xml/XSLTProcessor.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48814
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Mon, 28 Sep 2009 14:40:17 +0000 (14:40 +0000)]
2009-09-28 Pavel Feldman <pfeldman@chromium.org>
Reviewed by nobody (trivial follow up fix), Joseph Pecoraro LGTM-ed.
Web Inspector: Follow up to r48809.
InspectorController.wrapObject should only be called on the inspectable page side.
https://bugs.webkit.org/show_bug.cgi?id=17429
* inspector/front-end/EventListenersSidebarPane.js:
(WebInspector.EventListenersSidebarPane.prototype.update.callback):
(WebInspector.EventListenersSidebarPane.prototype.update):
(WebInspector.EventListenersSection):
(WebInspector.EventListenersSection.prototype.update):
(WebInspector.EventListenerBar):
(WebInspector.EventListenerBar.prototype.update):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48813
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 14:36:24 +0000 (14:36 +0000)]
Move the libxslt specific part of XSLTProcessor to a separate file.
https://bugs.webkit.org/show_bug.cgi?id=28303
Patch by Jakub Wieczorek <faw217@gmail.com> on 2009-09-28
Reviewed by Simon Hausmann.
In preparation for adding XSLT support with QtXmlPatterns to the Qt
port, move the libxslt part of the XSLTProcessor implementation into
another file and leave the part that can be reused and shared.
Additionally, fix some coding style issues.
* GNUmakefile.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* xml/XSLTProcessor.cpp:
(WebCore::XSLTProcessor::createDocumentFromSource): Remove trailing whitespaces.
(WebCore::createFragmentFromSource): Remove trailing whitespaces.
(WebCore::XSLTProcessor::transformToFragment): Remove trailing whitespaces.
(WebCore::XSLTProcessor::reset): Moved out of the class definition.
* xml/XSLTProcessorLibxslt.cpp: Added.
(WebCore::XSLTProcessor::genericErrorFunc): Moved.
(WebCore::XSLTProcessor::parseErrorFunc): Moved.
(WebCore::docLoaderFunc): Moved.
(WebCore::setXSLTLoadCallBack): Moved.
(WebCore::writeToVector): Moved.
(WebCore::saveResultToString): Moved.
(WebCore::xsltParamArrayFromParameterMap): Moved.
(WebCore::freeXsltParamArray): Moved.
(WebCore::xsltStylesheetPointer): Moved.
(WebCore::xmlDocPtrFromNode): Moved.
(WebCore::resultMIMEType): Moved.
(WebCore::XSLTProcessor::transformToString): Moved.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48812
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
staikos@webkit.org [Mon, 28 Sep 2009 14:28:23 +0000 (14:28 +0000)]
Minor correction to Copyright notice. Not reviewed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48811
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 28 Sep 2009 13:35:39 +0000 (13:35 +0000)]
2009-09-28 Charles Wei <charles.wei@torchmobile.com.cn>
Reviewed by Nikolas Zimmermann.
Fix the crash of SVG that crashes when use a non-exist symbol
https://bugs.webkit.org/show_bug.cgi?id=27693
* svg/custom/use-non-existing-symbol-crash-expected.txt: Added.
* svg/custom/use-non-existing-symbol-crash.svg: Added.
2009-09-28 Charles Wei <charles.wei@torchmobile.com.cn>
Reviewed by Nikolas Zimmermann.
Fix the crash of SVG that crashes when use a non-exist symbol
https://bugs.webkit.org/show_bug.cgi?id=27693
Test: svg/custom/use-non-existing-symbol-crash.svg
* svg/SVGUseElement.cpp:
(WebCore::shadowTreeContainsChangedNodes):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48810
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Mon, 28 Sep 2009 12:36:44 +0000 (12:36 +0000)]
2009-09-28 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Timothy Hatcher.
Inspector Should Show Event Listeners/Handlers Registered on each Node
https://bugs.webkit.org/show_bug.cgi?id=17429
Extracted a method from dispatchEvent to get the event ancestor chain
* dom/Node.cpp:
(WebCore::Node::eventAncestors): the extracted method
(WebCore::Node::dispatchGenericEvent): use eventAncestors
* dom/Node.h:
Asynchronous Flow For the Inspector, Backend -> DOM Agent -> Frontend
The DOMAgent's getEventListenersForNode handles the logic of finding
all the relevant listeners in the event flow.
* inspector/InspectorBackend.cpp:
(WebCore::InspectorBackend::getEventListenersForNode):
* inspector/InspectorBackend.h:
* inspector/InspectorBackend.idl:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::buildObjectForNode): added localName
* inspector/InspectorDOMAgent.h:
(WebCore::EventListenerInfo::EventListenerInfo):
* inspector/InspectorFrontend.cpp:
(WebCore::InspectorFrontend::didGetEventListenersForNode):
* inspector/InspectorFrontend.h:
(WebCore::InspectorFrontend::scriptState):
* inspector/front-end/DOMAgent.js: added localName to WebInspector.DOMNode from payload
(WebInspector.EventListeners.getEventListenersForNodeAsync.mycallback):
(WebInspector.EventListeners.getEventListenersForNodeAsync):
New Sidebar Pane in the Element's Panel
Includes Gear Menu for filtering the Event Listeners on the
"Selected Node Only" or "All Nodes"
* inspector/front-end/ElementsPanel.js: Handles refreshing the Pane when necessary
(WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
(WebInspector.ElementsPanel):
(WebInspector.ElementsPanel.prototype.updateEventListeners):
* inspector/front-end/EventListenersSidebarPane.js: Added.
(WebInspector.EventListenersSidebarPane): The 1st level in the Pane
(WebInspector.EventListenersSidebarPane.prototype.update.callback):
(WebInspector.EventListenersSidebarPane.prototype.update):
(WebInspector.EventListenersSection): The 2nd level in the Pane
(WebInspector.EventListenersSection.prototype.update): filters on Preference
(WebInspector.EventListenersSection.prototype.addListener):
(WebInspector.EventListenerBar): The 3rd level in the Pane
(WebInspector.EventListenerBar.prototype._getNodeDisplayName):
(WebInspector.EventListenerBar.prototype._getFunctionDisplayName):
(WebInspector.EventListenersSidebarPane.prototype._changeSetting): For the Gear Menu
Consolidated "appropriateSelectorForNode"
* inspector/front-end/StylesSidebarPane.js:
* inspector/front-end/utilities.js:
Miscellaneous Updates
* English.lproj/localizedStrings.js: "Event Listeners", "No Event Listeners", "Selected Node Only", "All Nodes"
* WebCore.gypi: included the new inspector files
* WebCore.vcproj/WebCore.vcproj: included source files that were missing
* inspector/front-end/Images/grayConnectorPoint.png: Added. Thanks to Timothy Hatcher.
* inspector/front-end/Images/whiteConnectorPoint.png: Added. Thanks to Timothy Hatcher.
* inspector/front-end/inspector.js: Preferences for the Gear Menu Event Listeners filter
* inspector/front-end/inspector.css: reused as much as possible
* inspector/front-end/inspector.html: include the new script
* inspector/front-end/WebKit.qrc: included the new inspector files
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48809
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 11:16:17 +0000 (11:16 +0000)]
Compile fix with namespaced Qt.
Patch by Andre Poenitz <andre.poenitz@trolltech.com> on 2009-09-28
Reviewed by Simon Hausmann.
* Api/qwebinspector_p.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48808
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 28 Sep 2009 09:17:10 +0000 (09:17 +0000)]
Add ARM version detection for Windows CE.
Patch by Joerg Bornemann <joerg.bornemann@nokia.com> on 2009-09-28
Reviewed by Simon Hausmann.
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48807
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 27 Sep 2009 23:59:05 +0000 (23:59 +0000)]
WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=29760
Implement CSSOM Range.getClientRects/getBoundingClientRect
Reviewed by Dan Bernstein.
Tests: fast/dom/Range/getBoundingClientRect-getClientRects-relative-to-viewport.html
fast/dom/Range/getBoundingClientRect.html
fast/dom/Range/getClientRects.html
* dom/Range.cpp:
(WebCore::Range::getClientRects):
(WebCore::Range::getBoundingClientRect):
(WebCore::adjustFloatQuadsForScrollAndAbsoluteZoom):
(WebCore::Range::getBorderAndTextQuads):
* dom/Range.h:
* dom/Range.idl:
Implement Range.getClientRects/getBoundingClientRect.
* dom/Element.cpp:
* rendering/RenderObject.h:
(WebCore::adjustForAbsoluteZoom):
(WebCore::adjustIntRectForAbsoluteZoom):
(WebCore::adjustFloatPointForAbsoluteZoom):
(WebCore::adjustFloatQuadForAbsoluteZoom):
Move point/quad adjustment methods from Element.cpp to RenderObject.h
so that Range.cpp can use them as well.
LayoutTests: Tests for https://bugs.webkit.org/show_bug.cgi?id=29760
Implement CSSOM Range.getClientRects/getBoundingClientRect
Reviewed by Dan Bernstein.
* fast/dom/Element/getBoundingClientRect-expected.txt: Copied from LayoutTests/fast/dom/getBoundingClientRect-expected.txt.
* fast/dom/Element/getBoundingClientRect-getClientRects-relative-to-viewport-expected.txt: Copied from LayoutTests/fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport-expected.txt.
* fast/dom/Element/getBoundingClientRect-getClientRects-relative-to-viewport.html: Copied from LayoutTests/fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html.
* fast/dom/Element/getBoundingClientRect.html: Copied from LayoutTests/fast/dom/getBoundingClientRect.html.
* fast/dom/Element/getClientRects-expected.txt: Copied from LayoutTests/fast/dom/getClientRects-expected.txt.
* fast/dom/Element/getClientRects.html: Copied from LayoutTests/fast/dom/getClientRects.html.
* fast/dom/Range/getBoundingClientRect-expected.txt: Added.
* fast/dom/Range/getBoundingClientRect-getClientRects-relative-to-viewport-expected.txt: Added.
* fast/dom/Range/getBoundingClientRect-getClientRects-relative-to-viewport.html: Added.
* fast/dom/Range/getBoundingClientRect.html: Added.
* fast/dom/Range/getClientRects-expected.txt: Added.
* fast/dom/Range/getClientRects.html: Added.
* fast/dom/Window/window-properties-expected.txt:
* fast/dom/getBoundingClientRect-expected.txt: Removed.
* fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport-expected.txt: Removed.
* fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html: Removed.
* fast/dom/getBoundingClientRect.html: Removed.
* fast/dom/getClientRects-expected.txt: Removed.
* fast/dom/getClientRects.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48806
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sun, 27 Sep 2009 21:33:42 +0000 (21:33 +0000)]
2009-09-27 Joe Ligman <joseph.ligman@mindspring.com>
Reviewed by Simon Hausmann.
[Qt] Adding API setFocus and hasFocus to QWebElement. This API is needed for
clients that want to check/set the focus node of the document.
https://bugs.webkit.org/show_bug.cgi?id=29682
* Api/qwebelement.cpp:
(QWebElement::hasFocus):
(QWebElement::setFocus):
* Api/qwebelement.h:
* tests/qwebelement/tst_qwebelement.cpp:
(tst_QWebElement::hasSetFocus):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48805
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Sun, 27 Sep 2009 21:32:52 +0000 (21:32 +0000)]
Unreviewed fix for WebInspector with Qt build.
Patch by Simon Hausmann <hausmann@webkit.org> on 2009-09-27
Simply re-generate the Qt resource file by running
WebKitTools/Scripts/generate-qt-inspector-resource
* inspector/front-end/WebKit.qrc:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48804
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sun, 27 Sep 2009 19:45:25 +0000 (19:45 +0000)]
2009-09-27 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Darin Adler.
run-webkit-tests: Do not strip the metrics when there is no expected result for a test.
https://bugs.webkit.org/show_bug.cgi?id=29771
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48803
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sun, 27 Sep 2009 19:12:49 +0000 (19:12 +0000)]
2009-09-27 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Simon Hausmann.
[Qt] Remove tests that are passing from the Skipped list after implementing
the waitForPolicyDelegate() function in LayoutTestController.
https://bugs.webkit.org/show_bug.cgi?id=25037
* platform/qt/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48802
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sun, 27 Sep 2009 19:05:44 +0000 (19:05 +0000)]
2009-09-27 Jakub Wieczorek <faw217@gmail.com>
Reviewed by Simon Hausmann.
[Qt] Implement layoutTestController.waitForPolicyDelegate.
https://bugs.webkit.org/show_bug.cgi?id=25037
* DumpRenderTree/qt/DumpRenderTree.cpp:
(WebCore::WebPage::acceptNavigationRequest):
* DumpRenderTree/qt/DumpRenderTree.pro:
* DumpRenderTree/qt/jsobjects.cpp:
(LayoutTestController::reset):
(LayoutTestController::notifyDone):
(LayoutTestController::waitForPolicyDelegate):
* DumpRenderTree/qt/jsobjects.h:
(LayoutTestController::waitForPolicy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48801
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Sun, 27 Sep 2009 09:44:19 +0000 (09:44 +0000)]
2009-09-27 Pavel Feldman <pfeldman@chromium.org>
Reviewed by nobody (trivial ChangeLog fix).
Restore WebCore/ChangeLog truncated in r48778.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48800
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Sun, 27 Sep 2009 09:19:13 +0000 (09:19 +0000)]
2009-09-27 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Timothy Hatcher.
Web Inspector: DOM store is being unbound twice, leading to assertion failure.
https://bugs.webkit.org/show_bug.cgi?id=29770
* inspector/InspectorController.cpp:
(WebCore::InspectorController::didOpenDatabase):
(WebCore::InspectorController::didUseDOMStorage):
* inspector/InspectorDOMStorageResource.cpp:
(WebCore::InspectorDOMStorageResource::unbind):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48799
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Sun, 27 Sep 2009 09:14:19 +0000 (09:14 +0000)]
2009-09-26 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Timothy Hatcher.
Web Inspector: Do not track DOM changes while inspector window is closed.
https://bugs.webkit.org/show_bug.cgi?id=29769
* inspector/InspectorController.cpp:
(WebCore::InspectorController::inspectedWindowScriptObjectCleared):
(WebCore::InspectorController::populateScriptObjects):
(WebCore::InspectorController::resetScriptObjects):
(WebCore::InspectorController::didCommitLoad):
* inspector/InspectorController.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setDocument):
* inspector/InspectorDOMAgent.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::dispatchWindowObjectAvailable):
* page/android/InspectorControllerAndroid.cpp:
(WebCore::InspectorController::inspectedWindowScriptObjectCleared):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48798
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Sun, 27 Sep 2009 07:08:10 +0000 (07:08 +0000)]
2009-09-26 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Timothy Hatcher.
Web Inspector: [REGRESSION] Double Clicking Resources Fails to Open in New Window
https://bugs.webkit.org/show_bug.cgi?id=29762
* inspector/front-end/InjectedScript.js:
(InjectedScript.setStyleText):
(InjectedScript.openInInspectedWindow):
* inspector/front-end/InjectedScriptAccess.js:
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48797
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sun, 27 Sep 2009 03:15:37 +0000 (03:15 +0000)]
GTK BUILD FIX: add ENABLE_ORIENTATION_EVENTS support to configure.ac
* configure.ac: Added support for ENABLE_ORIENTATION_EVENTS.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48796
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sun, 27 Sep 2009 03:02:24 +0000 (03:02 +0000)]
Part 2 of 2: <webkit.org/b/29753> DerivedSources.make broken for non-Mac targets
Reviewed by Darin Adler.
Fix ENABLE_ORIENTATION_EVENTS for non-Mac platforms.
WebCore:
* DerivedSources.make: Moved Platform.h check for
ENABLE_ORIENTATION_EVENTS into Mac-only section and added
default of ENABLE_ORIENTATION_EVENTS = 0 to non-Mac section.
Added ifndef test to make it possible to override both
ENABLE_DASHBOARD_SUPPORT and ENABLE_ORIENTATION_EVENTS external
to the makefile. Moved addition of ENABLE_ORIENTATION_EVENTS to
ADDITIONAL_IDL_DEFINES to common section.
* GNUmakefile.am: Added support for ENABLE_ORIENTATION_EVENTS if
it is ever used.
* WebCore.pro: Ditto.
WebKit:
* chromium/features.gypi: Added 'ENABLE_ORIENTATION_EVENTS=0' to
disable this feature by default.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48795
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 26 Sep 2009 23:14:21 +0000 (23:14 +0000)]
<webkit.org/b/29764> mark-bug-fixed: add -o|--open switch
Reviewed by Eric Seidel.
The -o|--open switch uses the open(1) command on Mac OS X to
open the bug URL in the default web browser. If there are
similar mechanisms on other platforms, they may be added later.
* Scripts/mark-bug-fixed:
(MarkBugFixed.__init__): Added -o|--open switch to list of parse
options.
(MarkBugFixed._determine_bug_id_and_svn_revision): Moved logging
code into main() and extracted prompting code into
_prompt_user_for_correctness().
(MarkBugFixed._open_bug_in_web_browser): Added.
(MarkBugFixed._prompt_user_for_correctness): Added.
(MarkBugFixed.main): Added logging code from
_determine_bug_id_and_svn_revision(). Added code to call
_open_bug_in_web_browser() if the switch is set. Added code to
call _prompt_user_for_correctness() when needed.
* Scripts/modules/bugzilla.py:
(Bugzilla.short_bug_url_for_bug_id): Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48794
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 26 Sep 2009 22:57:25 +0000 (22:57 +0000)]
svn-unapply and svn-apply don't work when used outside multiple svn working directories
<http://webkit.org/b/29744>
<rdar://problem/7252905>
Reviewed by Eric Seidel.
Some users have a workflow where svn-create-patch, svn-apply and
svn-unapply are used outside of multiple svn working
directories. Instead of aborting the scripts in these cases,
print a warning and assume that Subversion is being used.
* Scripts/VCSUtils.pm:
(determineVCSRoot): Call warn() instead of die() if both isGit()
and isSVN() initially return false. Set $VCSUtils::isSVN to 1
to enforce the assumption about Subversion, then return
determineSVNRoot().
* Scripts/svn-apply: Switch to using isGit() and isSVN() from
VCSUtils.pm. They both already cache their values and checking
here is redundant since determineVCSRoot() is called later.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48793
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 18:56:04 +0000 (18:56 +0000)]
2009-09-26 Kent Tamura <tkent@chromium.org>
Reviewed by David Kilzer.
Move placeholder-related code to HTMLTextFormControlElement from
HTMLInputElement, WMLInputElement, InputElement, and
HTMLTextAreaElement.
https://bugs.webkit.org/show_bug.cgi?id=28703
* dom/InputElement.cpp:
(WebCore::InputElement::dispatchFocusEvent):
(WebCore::InputElement::dispatchBlurEvent):
(WebCore::InputElement::setValueFromRenderer):
* dom/InputElement.h:
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement):
(WebCore::HTMLTextFormControlElement::~HTMLTextFormControlElement):
(WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
(WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
(WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
(WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
* html/HTMLFormControlElement.h:
(WebCore::HTMLTextFormControlElement::handleFocusEvent):
(WebCore::HTMLTextFormControlElement::handleBlurEvent):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::handleFocusEvent):
(WebCore::HTMLInputElement::handleBlurEvent):
(WebCore::HTMLInputElement::parseMappedAttribute):
(WebCore::HTMLInputElement::createRenderer):
(WebCore::HTMLInputElement::setValue):
(WebCore::HTMLInputElement::setValueFromRenderer):
* html/HTMLInputElement.h:
(WebCore::HTMLInputElement::supportsPlaceholder):
(WebCore::HTMLInputElement::isEmptyValue):
* html/HTMLIsIndexElement.cpp:
(WebCore::HTMLIsIndexElement::parseMappedAttribute):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
(WebCore::HTMLTextAreaElement::createRenderer):
* html/HTMLTextAreaElement.h:
(WebCore::HTMLTextAreaElement::supportsPlaceholder):
(WebCore::HTMLTextAreaElement::isEmptyValue):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::RenderTextControl):
* rendering/RenderTextControl.h:
* rendering/RenderTextControlMultiLine.cpp:
(WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
* rendering/RenderTextControlMultiLine.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
(WebCore::RenderTextControlSingleLine::updateFromElement):
* rendering/RenderTextControlSingleLine.h:
* wml/WMLInputElement.cpp:
(WebCore::WMLInputElement::setValue):
(WebCore::WMLInputElement::createRenderer):
* wml/WMLInputElement.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48792
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 17:51:12 +0000 (17:51 +0000)]
2009-09-26 Zan Dobersek <zandobersek@gmail.com>
Reviewed by Gustavo Noronha.
[Layout tests] [Gtk] Gtk DumpRenderTree should use WebKit test fonts
https://bugs.webkit.org/show_bug.cgi?id=29689
Load test fonts through FontConfig before each test.
This ensures a more proper rendering of the tests.
* DumpRenderTree/gtk/DumpRenderTree.cpp:
(initializeFonts):
(runTest):
(main):
* DumpRenderTree/gtk/fonts.conf: Copied from WebKitTools/DumpRenderTree/qt/fonts.conf.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48791
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 15:00:27 +0000 (15:00 +0000)]
2009-09-26 Shu Chang <Chang.Shu@nokia.com>
Reviewed by Alexey Proskuryakov.
Optimize the code so only the text from start to end is scanned.
https://bugs.webkit.org/show_bug.cgi?id=29092
On a platform with webkit+Qt+Symbian, the parsing time for a 600K text
file improved from 400ms to 40ms (10x faster).
* dom/Text.cpp:
(WebCore::Text::createWithLengthLimit):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48790
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 13:12:20 +0000 (13:12 +0000)]
2009-09-26 Xiaomei Ji <xji@chromium.org>
Reviewed by Eric Seidel.
This Patch fixes [chromium] the drop-down is always left-aligned even
for RTL element.
https://bugs.webkit.org/show_bug.cgi?id=29612
For auto-complete, the items in drop-down should be right-aligned if
the directionality of <input> field is RTL.
For <select><option>, the items in drop-down should be right-aligned
if the directionality of <select> is RTL.
No automatic test is possible. Manual tests are added.
* manual-tests/autofill_alignment.html: Added.
* manual-tests/select_alignment.html: Added.
* platform/chromium/PopupMenuChromium.cpp:
(WebCore::PopupListBox::paintRow): Adjust the starting x-axis of text to
be paint if it should be right-aligned.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48789
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Sat, 26 Sep 2009 12:47:01 +0000 (12:47 +0000)]
Add MarkStackSymbian.cpp to build JavascriptCore for Symbian.
Patch by Yongjun Zhang <yongjun.zhang@nokia.com> on 2009-09-26
Reviewed by Simon Hausmann.
Re-use Windows shrinkAllocation implementation because Symbian doesn't
support releasing part of memory region.
Use fastMalloc and fastFree to implement allocateStack and releaseStack
for Symbian port.
* JavaScriptCore.pri:
* runtime/MarkStack.h:
(JSC::MarkStack::MarkStackArray::shrinkAllocation):
* runtime/MarkStackSymbian.cpp: Added.
(JSC::MarkStack::initializePagesize):
(JSC::MarkStack::allocateStack):
(JSC::MarkStack::releaseStack):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48788
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 26 Sep 2009 06:43:25 +0000 (06:43 +0000)]
REGRESSION (r48775) FontList.plist written by TOT WebKit causes Safari 4
to crash on launch
https://bugs.webkit.org/show_bug.cgi?id=29759
Reviewed by Sam Weinig.
* platform/graphics/win/FontDatabase.cpp:
(WebCore::writeFontDatabaseToPlist): Reverted to saving the CG font DB
property list at the root of FontList.plist, but with an additional
key for the last value of the Fonts registry key.
(WebCore::populateFontDatabase): Pass the FontList.plist in its entirety
to populatFontDatabaseFromPlist.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48787
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Sat, 26 Sep 2009 06:41:34 +0000 (06:41 +0000)]
wx build fix. Add EmptyPluginHalterClient when creating Page.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48786
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Sat, 26 Sep 2009 06:31:43 +0000 (06:31 +0000)]
Build fix. Adding missing header files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48785
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 26 Sep 2009 04:32:58 +0000 (04:32 +0000)]
Part 1 of 2: <webkit.org/b/29753> DerivedSources.make broken for non-Mac targets
Reviewed by Darin Adler.
* DerivedSources.make: Move tests for ENABLE_CONTEXT_MENUS,
ENABLE_DRAG_SUPPORT and ENABLE_INSPECTOR into Mac-only section.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48784
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 02:35:15 +0000 (02:35 +0000)]
2009-09-25 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Load blocks during unload should not affect targeted loads
https://bugs.webkit.org/show_bug.cgi?id=29747
Test that we can follow targeted hyperlinks in an unload handler.
* fast/loader/resources/unload-hyperlink-targeted-subframe.html: Added.
* fast/loader/unload-hyperlink-targeted-expected.txt: Added.
* fast/loader/unload-hyperlink-targeted.html: Added.
2009-09-25 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Load blocks during unload should not affect targeted loads
https://bugs.webkit.org/show_bug.cgi?id=29747
Move the check of the unload state after checking for targeted links.
Test: fast/loader/unload-hyperlink-targeted.html
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48783
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 02:27:02 +0000 (02:27 +0000)]
2009-09-25 Gabor Loki <loki@inf.u-szeged.hu>
Reviewed by Gavin Barraclough.
Fix unaligned data access in YARR_JIT on ARMv5 and below.
https://bugs.webkit.org/show_bug.cgi?id=29695
On ARMv5 and below all data access should be naturally aligned.
In the YARR_JIT there is a case when character pairs are
loaded from the input string, but this data access is not
naturally aligned. This fix introduces load32WithUnalignedHalfWords
and branch32WithUnalignedHalfWords functions which contain
naturally aligned memory loads - half word loads - on ARMv5 and below.
* assembler/MacroAssemblerARM.cpp:
(JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
(JSC::MacroAssemblerARM::branch32WithUnalignedHalfWords):
* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::load32WithUnalignedHalfWords):
(JSC::MacroAssemblerARMv7::branch32):
(JSC::MacroAssemblerARMv7::branch32WithUnalignedHalfWords):
* assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::load32WithUnalignedHalfWords):
(JSC::MacroAssemblerX86Common::branch32WithUnalignedHalfWords):
* wtf/Platform.h:
* yarr/RegexJIT.cpp:
(JSC::Yarr::RegexGenerator::generatePatternCharacterPair):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48782
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Sat, 26 Sep 2009 02:13:16 +0000 (02:13 +0000)]
2009-09-25 Kenneth Russell <kbr@google.com>
Reviewed by Dimitri Glazkov.
[Chromium] Add initial V8 bindings for WebGL
https://bugs.webkit.org/show_bug.cgi?id=29664
* WebCore.gypi:
* bindings/scripts/CodeGeneratorV8.pm:
* bindings/v8/DOMObjectsInclude.h:
* bindings/v8/DerivedSourcesAllInOne.cpp:
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::getTemplate):
* bindings/v8/V8Index.cpp:
* bindings/v8/V8Index.h:
* bindings/v8/custom/V8CanvasArrayBufferCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
* bindings/v8/custom/V8CanvasArrayCustom.h: Added.
(WebCore::constructCanvasArray):
* bindings/v8/custom/V8CanvasByteArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasFloatArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasIntArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasRenderingContext3DCustom.cpp: Added.
(WebCore::jsArrayToFloatArray):
(WebCore::jsArrayToIntArray):
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::):
(WebCore::vertexAttribAndUniformHelperf):
(WebCore::uniformHelperi):
(WebCore::uniformMatrixHelper):
* bindings/v8/custom/V8CanvasShortArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasUnsignedByteArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasUnsignedIntArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CanvasUnsignedShortArrayCustom.cpp: Added.
(WebCore::CALLBACK_FUNC_DECL):
(WebCore::INDEXED_PROPERTY_GETTER):
(WebCore::INDEXED_PROPERTY_SETTER):
* bindings/v8/custom/V8CustomBinding.h:
* bindings/v8/custom/V8DocumentCustom.cpp:
(WebCore::CALLBACK_FUNC_DECL):
* bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
(WebCore::CALLBACK_FUNC_DECL):
* platform/graphics/GraphicsContext3D.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48781
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jorlow@chromium.org [Sat, 26 Sep 2009 01:45:44 +0000 (01:45 +0000)]
JavaScriptCore: This is breaking Chromium try bots, so I'm counting this as a build fix.
Patch by Jeremy Orlow <jorlow@chromium.org> on 2009-09-25
Add more svn:ignore exceptions. On different platforms, these files are
generated with different case for JavaScriptCore. Also there are some
wtf project files that get built apparently.
* JavaScriptCore.gyp: Changed property svn:ignore.
WebCore: This is breaking Chromium try bots, so I'm counting this as a build fix.
Patch by Jeremy Orlow <jorlow@chromium.org> on 2009-09-25
Add more svn:ignore exceptions. On different platforms, these files are
generated with different case for WebCore.
* WebCore.gyp: Changed property svn:ignore.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48780
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Sat, 26 Sep 2009 00:57:12 +0000 (00:57 +0000)]
Build fix.
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48779
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sat, 26 Sep 2009 00:21:50 +0000 (00:21 +0000)]
Reverting r48767, as it broke Windows build in a non-trivial way.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48778
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
agl@chromium.org [Fri, 25 Sep 2009 23:18:55 +0000 (23:18 +0000)]
2009-09-24 Tony Chang <tony@chromium.org>
Reviewed by David Levin.
Add a gyp variable to allow building a debug webcore without debug
symbols. This allows for faster compile, link, and gdb times.
https://bugs.webkit.org/show_bug.cgi?id=29721
No new tests, build config change.
* WebCore.gyp/WebCore.gyp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48777
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@chromium.org [Fri, 25 Sep 2009 23:11:46 +0000 (23:11 +0000)]
2009-09-25 Darin Fisher <darin@chromium.org>
Reviewed by Dimitri Glazkov.
Declare RegisteredEventListener as a class instead of a struct.
This fixes a warning in the Chromium build.
* dom/RegisteredEventListener.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48776
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 25 Sep 2009 23:07:21 +0000 (23:07 +0000)]
WebCore: WebCore part of
<rdar://problem/7211635> 2 byte characters are displayed as garbaged
<rdar://problem/7212626> garbled/gibberish text (off-by-one)
Reviewed by Jon Honeycutt.
When the Windows Fonts directory contains more than one font file for a
given font name, which of the fonts gets assigned to the name in the
Core Graphics font database was determined arbitrarily and did not
always match the font GDI used for the same font name. The mismatch
caused character-to-glyph mapping to use one font and glyph rendering to
use another.
The fix is to update the Core Graphics font database from the registry
entries (that reflect the name-to-font mapping that GDI uses) after
populating it with the result of scanning the Fonts directory. As a
consequence, the directory needs to be scanned at startup every time the
registry key changes, so the last value of the registry key is kept
in the property list on disk so that it could be compared to the current
value on startup.
* platform/graphics/win/FontDatabase.cpp:
(WebCore::populateFontDatabaseFromPlist): Now takes a property list as
a parameter and avoids round-tripping through XML by calling
wkAddFontsFromPlist() instead of wkAddFontsFromPlistRepresentation().
(WebCore::fontFilenamesFromRegistryKey):
(WebCore::cgFontDBKey):
(WebCore::writeFontDatabaseToPlist): Now takes the CG font DB property
list and a property list with the font filenames from the registry and
writes a dictionary with those property lists as values.
(WebCore::fontFilenamesFromRegistry): Added. Returns an array with the
values in the HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
registry key.
(WebCore::populateFontDatabase): Changed to read the contents of the
Fonts registry key and compare it with the last-saved value from the
property list, and to call wkAddFontsFromRegistry() after populating the
CG font DB from the file system. Uses wkCreateFontsPlist() instead of
wkCreateFontsPlistRepresentation() to avoid round-tripping through XML.
WebKitLibraries: WebKitSystemInterface changes for
<rdar://problem/7211635> 2 byte characters are displayed as garbaged
<rdar://problem/7212626> garbled/gibberish text (off-by-one)
Reviewed by Adam Roben.
* win/include/WebKitSystemInterface/WebKitSystemInterface.h: Added
wkAddFontsFromPlistRepresentation() and replaced
wkCreateFontsPlistRepresentation() with wkCreateFontsPlist() and
wkAddFontsFromPlistRepresentation() with wkAddFontsFromPlist().
* win/lib/WebKitSystemInterface.lib:
* win/lib/WebKitSystemInterface_debug.lib:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48775
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Fri, 25 Sep 2009 22:26:44 +0000 (22:26 +0000)]
JavaScriptCore: Inlined some object creation code, including lexicalGlobalObject access
https://bugs.webkit.org/show_bug.cgi?id=29750
Patch by Geoffrey Garen <ggaren@apple.com> on 2009-09-25
Reviewed by Darin Adler.
SunSpider says 0.5% faster.
0.8% speedup on bench-alloc-nonretained.js.
2.5% speedup on v8-splay.js.
* interpreter/CachedCall.h:
(JSC::CachedCall::CachedCall):
* interpreter/CallFrame.h:
(JSC::ExecState::lexicalGlobalObject):
(JSC::ExecState::globalThisValue):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::execute):
(JSC::Interpreter::privateExecute):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/FunctionConstructor.cpp:
(JSC::constructFunction):
* runtime/ScopeChain.cpp:
(JSC::ScopeChainNode::print):
* runtime/ScopeChain.h:
(JSC::ScopeChainNode::ScopeChainNode):
(JSC::ScopeChainNode::~ScopeChainNode):
(JSC::ScopeChainNode::push):
(JSC::ScopeChain::ScopeChain):
(JSC::ScopeChain::globalObject): Added a globalObject data member to ScopeChainNode.
Replaced accessor function for globalObject() with data member. Replaced
globalThisObject() accessor with direct access to globalThis, to match.
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
* runtime/JSGlobalObject.h: Inlined array and object construction.
WebCore: Inlined some object creation code, including lexicalGlobalObject access
https://bugs.webkit.org/show_bug.cgi?id=29750
Patch by Geoffrey Garen <ggaren@apple.com> on 2009-09-25
Reviewed by Darin Adler.
* bindings/js/JSInspectorBackendCustom.cpp:
(WebCore::JSInspectorBackend::currentCallFrame):
* inspector/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::hasBreakpoint): Updated for JavaScriptCore
API changes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48774
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 25 Sep 2009 22:24:45 +0000 (22:24 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=24399
Make @import work in user stylesheets. The first bug was that the URL wasn't being set on the
user sheets themselves, so relative @import URLs couldn't resolve properly. The second bug
was that the loads would be denied. This is fixed by using the requestUserCSSStyleSheet method
instead of the normal request method. In order to know when to do this, CSSStyleSheets now have
a propagated boolean, m_isUserStyleSheet, that lets them know if they are user stylesheets or not.
Reviewed by Anders Carlsson.
* css/CSSImportRule.cpp:
(WebCore::CSSImportRule::insertedIntoParent):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::CSSStyleSheet):
* css/CSSStyleSheet.h:
(WebCore::CSSStyleSheet::setIsUserStyleSheet):
(WebCore::CSSStyleSheet::isUserStyleSheet):
* dom/Document.cpp:
(WebCore::Document::pageUserSheet):
(WebCore::Document::pageGroupUserSheets):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48773
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Fri, 25 Sep 2009 22:02:38 +0000 (22:02 +0000)]
<webkit.org/b/29718> mark-bug-fixed: add -u|--update-only switch
Reviewed by Eric Seidel.
* Scripts/mark-bug-fixed:
(MarkBugFixed.__init__): Added -u|--update-only switch to list
of parse options.
(MarkBugFixed.main): When -u|--update-only is specified, add a
comment to the bug without marking it Resolved/Fixed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48772
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 25 Sep 2009 22:01:43 +0000 (22:01 +0000)]
2009-09-25 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
Crash with hardware accelerated rotation of a PDF image in a data URL
<rdar://problem/7250378>
PDF images don't return a color space from CGImageGetColorSpace(),
so we need to null-check the return value before use.
Test: compositing/color-matching/pdf-image-match.html
* platform/graphics/mac/GraphicsLayerCA.mm:
(WebCore::GraphicsLayerCA::setContentsToImage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48771
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 25 Sep 2009 21:40:50 +0000 (21:40 +0000)]
Speed up access to history items by caching date computation.
Patch by Darin Adler <darin@apple.com> on 2009-09-25
Reviewed by Steve Falkenburg.
* History/WebHistory.mm:
(getDayBoundaries): Refactored from timeIntervalForBeginningOfDay.
Returns the beginning of the day that the passed time is within and
the beginning of the next day.
(beginningOfDay): Added. Uses getDayBoundaries so it can be fast for
multiple dates within the same day, which is the common case.
(dateKey): Added. Calls beginningOfDay and converts to an integer.
(WebHistory::findKey): Changed to call dateKey instead of
timeIntervalForBeginningOfDay.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48770
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 25 Sep 2009 21:08:17 +0000 (21:08 +0000)]
Null-deref when first access to an Attr node is after its Element is destroyed
https://bugs.webkit.org/show_bug.cgi?id=29748
Patch by Darin Adler <darin@apple.com> on 2009-09-25
Reviewed by Geoffrey Garen.
WebCore:
Test: fast/dom/Attr/access-after-element-destruction.html
* bindings/js/JSAttrCustom.cpp:
(WebCore::JSAttr::markChildren): Added. Keeps the ownerElement alive as
long as the Attr is alive.
* bindings/js/JSNamedNodeMapCustom.cpp:
(WebCore::JSNamedNodeMap::markChildren): Added. Keeps the Element alive as
long as the NamedNodeMap is alive.
* dom/Attr.idl: Added CustomMarkFunction attribute.
* dom/NamedAttrMap.cpp:
(WebCore::NamedNodeMap::getAttributeItem): Tweaked formatting.
(WebCore::NamedNodeMap::detachFromElement): Call clearAttributes so we don't
have attributes hanging around that might need an Attr node created; that way
we won't crash with a null-dereference trying to deal with one of them. This
can't happen when working with JavaScript since the Element will be kept
alive due to the change above.
(WebCore::NamedNodeMap::addAttribute): Fix function name in comment.
(WebCore::NamedNodeMap::removeAttribute): Removed unneeded "+ 1" and added
missing braces.
* dom/NamedAttrMap.h: Made the element function public so it can be used by
the JavaScript binding to keep the Element alive.
* dom/NamedNodeMap.idl: Added CustomMarkFunction attribute.
LayoutTests:
* fast/dom/Attr/access-after-element-destruction-expected.txt: Added.
* fast/dom/Attr/access-after-element-destruction.html: Added.
* fast/dom/Attr/script-tests/TEMPLATE.html: Copied from LayoutTests/fast/dom/Node/script-tests/TEMPLATE.html.
* fast/dom/Attr/script-tests/access-after-element-destruction.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48769
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 25 Sep 2009 21:07:59 +0000 (21:07 +0000)]
* Scripts/prepare-ChangeLog: Leave files from the script-tests directory
out, just as we do for the resources directory.
Reviewed by Geoffrey Garen.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48768
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Fri, 25 Sep 2009 20:44:11 +0000 (20:44 +0000)]
Reviewed by Darin Adler and Sam Weinig.
Onclick not fired for an element copied with cloneContents() or cloneNode()
https://bugs.webkit.org/show_bug.cgi?id=25130
The change here is that JS event listeners don't keep a reference to a global object from
where they were created, and instead take it as a parameter when parsing source code. Also,
the listener creation won't fail just because it happens for an element in a frameless
document.
Thus, moving nodes between documents no longer results in having incorrect registered
lazy event listeners on them.
Tests: fast/events/attribute-listener-cloned-from-frameless-doc-context-2.html
fast/events/attribute-listener-cloned-from-frameless-doc-context.html
fast/events/attribute-listener-cloned-from-frameless-doc.xhtml
fast/events/attribute-listener-extracted-from-frameless-doc-context-2.html
fast/events/attribute-listener-extracted-from-frameless-doc-context.html
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener): Don't take a reference to JSDOMGlobalObject.
(WebCore::JSEventListener::jsFunction): Take ScriptExecutionContext as a parameter for
getting to JSDOMGlobalObject. It's not used in base class, but is in JSLazyEventListner.
(WebCore::JSEventListener::markJSFunction): Don't mark the global object.
(WebCore::JSEventListener::handleEvent): Get global object from ScriptExecutionContext.
(WebCore::JSEventListener::reportError): Ditto.
* bindings/js/JSEventListener.h: (WebCore::JSEventListener::create): Don't keep a reference
to JSDOMGlobalObject.
* bindings/js/JSLazyEventListener.cpp: (WebCore::JSLazyEventListener::parseCode): Listener
creation was split between this function and ScriptEventListener; moved it here, as JS
global object can be different now.
* bindings/js/JSLazyEventListener.h: (WebCore::JSLazyEventListener::create): Keep source URL,
which can not be determined at parsing time.
* bindings/js/ScriptEventListener.cpp: (WebCore::createAttributeEventListener): Moved code
for listener creation to JSLazyEventListener. XSSAuditor code remains here, because tests
expect that errors are logged at document parsing time, and because I don't know what other
side effects moving it vould have.
* dom/EventListener.h: handleEvent() and reportError() now take ScriptExecutionContext,
because JSC needs a global context here.
* bindings/js/JSAbstractWorkerCustom.cpp:
(WebCore::JSAbstractWorker::addEventListener):
(WebCore::JSAbstractWorker::removeEventListener):
* bindings/js/JSDOMApplicationCacheCustom.cpp:
(WebCore::JSDOMApplicationCache::addEventListener):
(WebCore::JSDOMApplicationCache::removeEventListener):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::addEventListener):
(WebCore::JSDOMWindow::removeEventListener):
* bindings/js/JSEventSourceCustom.cpp:
(WebCore::JSEventSource::addEventListener):
(WebCore::JSEventSource::removeEventListener):
* bindings/js/JSMessagePortCustom.cpp:
(WebCore::JSMessagePort::addEventListener):
(WebCore::JSMessagePort::removeEventListener):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::addEventListener):
(WebCore::JSNode::removeEventListener):
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::addEventListener):
(WebCore::JSSVGElementInstance::removeEventListener):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::addEventListener):
(WebCore::JSWorkerContext::removeEventListener):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::addEventListener):
(WebCore::JSXMLHttpRequest::removeEventListener):
* bindings/js/JSXMLHttpRequestUploadCustom.cpp:
(WebCore::JSXMLHttpRequestUpload::addEventListener):
(WebCore::JSXMLHttpRequestUpload::removeEventListener):
* bindings/objc/ObjCEventListener.h:
* bindings/objc/ObjCEventListener.mm:
(WebCore::ObjCEventListener::handleEvent):
* bindings/scripts/CodeGeneratorJS.pm:
* dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::handleEvent):
* inspector/InspectorDOMAgent.h:
* inspector/InspectorDOMStorageResource.cpp:
(WebCore::InspectorDOMStorageResource::handleEvent):
* inspector/InspectorDOMStorageResource.h:
* loader/ImageDocument.cpp:
(WebCore::ImageEventListener::handleEvent):
* svg/animation/SVGSMILElement.cpp:
(WebCore::ConditionEventListener::handleEvent):
* workers/WorkerContext.cpp:
(WebCore::WorkerContext::reportException):
Don't pass global object to JSEventListener::create(), which no longer needs it.
Note that some of these functions still have an early return for null global object, which
can probably be removed in a later patch.
Pass ScriptExecutionContext to EventListener methods that now need it.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48767
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 25 Sep 2009 20:24:55 +0000 (20:24 +0000)]
Checked in a file that was created by make-script-test-wrappers.
Patch by Darin Adler <darin@apple.com> on 2009-09-25
* platform/gtk/editing/pasteboard/middle-click-onpaste.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48766
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Fri, 25 Sep 2009 20:00:56 +0000 (20:00 +0000)]
2009-09-25 Adam Barth <abarth@webkit.org>
Unreviewed. Added Tony to committers.py because he's a
committer now.
* Scripts/modules/committers.py:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48765
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele@apple.com [Fri, 25 Sep 2009 18:55:42 +0000 (18:55 +0000)]
WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=29740
<rdar://problem/7168738> Gmail: After changing a foreground text color, pressing return doesn't apply background to new line
Patch by Enrica Casucci <enrica@apple.com> on 2009-09-25
Reviewed by Darin Adler, Dan Bernstein, Adele Peterson, and others.
Change the way style is preserved when inserting a new paragraph.
The original code handled insertion at the beginning and at the end of a paragraph as special
cases. The newly created paragraph contained a set of nodes generated starting from the
computed style of the insertion node. This approach has two problems:
1. if the insertion node has a non opaque background color and one of the parent element did have
a solid background color the new paragraph did not have the element with the solid color in the tree.
2. in some circumstances it generated more markup than the original paragraph had (a span with bold, italic,
background color and some font attribute was being reproduced as span + bold + italic + font as separate tags.
The new approach is to recreate in the new paragraph the same hierarchy of nodes found in the
paragraph where the insertion point is.
Test: editing/inserting/insert-bg-font.html
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::getAncestorsInsideBlock): retrieves the list of all the ancestors
between the insert node and the outer block.
(WebCore::InsertParagraphSeparatorCommand::cloneHierarchyUnderNewBlock): uses the list of ancestors to recreate
in the new paragraph the same element hierarchy present in the starting paragraph.
(WebCore::InsertParagraphSeparatorCommand::doApply): changed the code to handle the general case of insertion
in the middle of the paragraph to use the new methods. Changed the handling of the insertion at the beginning and
at the end of the paragraph to use the new methods instead of applying the calculated style.
* editing/InsertParagraphSeparatorCommand.h: added methods getAncestorsInsideBlock and cloneHierarchyUnderNewBlock.
LayoutTests: Updated the expected results to reflect the changes in the way the new paragraph
is created and added test case for https://bugs.webkit.org/show_bug.cgi?id=29740
<rdar://problem/7168738> Gmail: After changing a foreground text color, pressing return doesn't apply background to new line
Patch by Enrica Casucci <enrica@apple.com> on 2009-09-25
Reviewed by Darin Adler, Dan Bernstein, Adele Peterson, and others.
* editing/inserting/insert-bg-font.html: Added.
* platform/mac/editing/inserting/insert-bg-font-expected.txt: Added.
* platform/mac/editing/pasteboard/5478250-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48764
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 18:36:56 +0000 (18:36 +0000)]
2009-09-25 Patrick Mueller <Patrick_Mueller@us.ibm.com>
Reviewed by Timothy Hatcher.
Content-type parameters not taken into account when building form-data
https://bugs.webkit.org/show_bug.cgi?id=28970
existing manual test case extended with new tests
* English.lproj/localizedStrings.js:
* inspector/front-end/ResourceView.js:
(WebInspector.ResourceView.prototype._refreshFormData):
(WebInspector.ResourceView.prototype._refreshParms):
* manual-tests/inspector/display-form-data.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48763
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 18:27:53 +0000 (18:27 +0000)]
2009-09-25 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
commit-queue should auto-retry patches which fail to commit due to out of date files
https://bugs.webkit.org/show_bug.cgi?id=28316
* Scripts/bugzilla-tool:
- Handle new CheckoutNeedsUpdate exception.
* Scripts/modules/logging_unittest.py:
- Call the ScriptError constructor correctly (this test had regressed).
* Scripts/modules/scm.py:
- Added the ability to define custom error handlers for run_command
and added a commit_error_handler which throws CheckoutNeedsUpdate
instead of ScriptError.
- Re-ordered ScriptError constructor arguments to make ScriptError("message text") usage possible.
* Scripts/modules/scm_unittest.py:
- Added tests of new error handlers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48762
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 17:53:43 +0000 (17:53 +0000)]
2009-09-25 Yuan Song <song.yuan@ericsson.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=14566
Add test "invalid-domain-change-throws-exception.html" to ensure a SECURITY_ERR exception is raised if an attempt is made to change document.domain to an invalid value. In the existing test case "basic-textareas.html", fix the faulty behavior of setting document.domain to invalid value, and replace the data URL to a file URL that points to "basic-textareas-standards.html" in order to make "basic-textareas.html" runnable in a browser.
* fast/forms/basic-textareas.html:
* fast/forms/resources/basic-textareas-standards.html: Added.
* fast/js/invalid-domain-change-throws-exception-expected.txt: Added.
* fast/js/invalid-domain-change-throws-exception.html: Added.
* fast/js/resources/invalid-domain-change-throws-exception.js: Added.
2009-09-25 Yuan Song <song.yuan@ericsson.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=14566
Raise SECURITY_ERR exception if an attempt is made to change document.domain to an invalid value.
Test: fast/js/invalid-domain-change-throws-exception.html
* dom/Document.cpp:
(WebCore::Document::setDomain):
* dom/Document.h:
* dom/Document.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48761
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 17:40:47 +0000 (17:40 +0000)]
2009-09-25 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
commit-queue should give better feedback when failing a patch
https://bugs.webkit.org/show_bug.cgi?id=29316
* Scripts/bugzilla-tool:
- Update ScriptError uses to the new constructor format.
- Move CommitQueue._run_command to WebKitLandingScripts.run_command_with_teed_output
so that we can print to both stdout as well as an output buffer for error reporting.
- Update run_and_throw_if_fail to use teed output so that it can report the "output" as part of ScriptError.
- Use e.message_with_output() when failing a patch (this is the real fix here).
I also removed use of "This patch will require manual commit." as that's not always true.
- Add missing word "bug" from log message.
* Scripts/modules/scm.py:
- Make ScriptError save a bunch more data so that error messages can be nicer.
- Update ScriptError callers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48760
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 16:36:57 +0000 (16:36 +0000)]
2009-09-25 Adam Barth <abarth@webkit.org>
Reviewed by Dimitri Glazkov.
[V8] Teach ScheduledAction::execute about isolated worlds
https://bugs.webkit.org/show_bug.cgi?id=27703
Test a strange error condition after clearing a setInterval
timer. The key point is not to crash on this test.
* fast/dom/timer-clear-interval-in-handler-and-generate-error-expected.txt: Added.
* fast/dom/timer-clear-interval-in-handler-and-generate-error.html: Added.
2009-09-25 Adam Barth <abarth@webkit.org>
Reviewed by Dimitri Glazkov.
[V8] Teach ScheduledAction::execute about isolated worlds
https://bugs.webkit.org/show_bug.cgi?id=27703
When setTimeout is called with a string argument in an isolated
world, we now compile the string in the isolated world.
Last time we tried this change, we got a lot of crashes. This
time we're using a fresh local handle as our context to avoid
trouble if the peristent handle gets disposed before we leave
the context.
Test: fast/dom/timer-clear-interval-in-handler-and-generate-error.html
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48759
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 16:30:00 +0000 (16:30 +0000)]
2009-09-25 Csaba Osztrogonac <oszi@inf.u-szeged.hu>
Reviewed by Simon Hausmann.
[Qt] Make tst_qwebframe work if Qt built without SSL support
https://bugs.webkit.org/show_bug.cgi?id=29735
* tests/qwebframe/tst_qwebframe.cpp: Missing #ifndef blocks added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48758
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 16:23:06 +0000 (16:23 +0000)]
2009-09-25 Paul Godavari <paul@chromium.org>
Reviewed by Darin Fisher.
Fix a regression in Mac Chromium popup menus, where the user's
selection was ignored and the popup became unresponsive.
https://bugs.webkit.org/show_bug.cgi?id=29726
The fix is to notify the popup's client that the popup was hidden,
even if the popup has no parent.
* platform/chromium/PopupMenuChromium.cpp:
(WebCore::PopupListBox::hidePopup):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48757
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Fri, 25 Sep 2009 16:10:49 +0000 (16:10 +0000)]
2009-09-25 Laszlo Gombos <laszlo.1.gombos@nokia.com>
Reviewed by Gavin Barraclough.
Add ARM version detection rules for Symbian
https://bugs.webkit.org/show_bug.cgi?id=29715
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48756
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Fri, 25 Sep 2009 15:47:56 +0000 (15:47 +0000)]
2009-09-25 Alexander Pavlov <apavlov@chromium.org>
Reviewed by Dan Bernstein.
Enable Pasteboard::writePlainText for Chromium and fix code style nits.
https://bugs.webkit.org/show_bug.cgi?id=29734
* platform/chromium/PasteboardChromium.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::writeURL):
* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::writeSelection):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::writeURL):
* platform/qt/PasteboardQt.cpp:
(WebCore::Pasteboard::writePlainText):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48755
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 25 Sep 2009 15:32:41 +0000 (15:32 +0000)]
Add SPI to invalidate a WebView's backing store
This is useful in conjunction with
IWebUIDelegatePrivate2::drawBackground. This provides a way for the UI
delegate to force WebView to get its background redrawn.
Fixes <http://webkit.org/b/29737> Need SPI to invalidate a WebView's
backing store
Reviewed by Anders Carlsson.
* Interfaces/IWebViewPrivate.idl: Added invalidateBackingStore.
* WebView.cpp:
(WebView::invalidateBackingStore): If rect is 0, invalidate our whole
client rect. Otherwise invalidate the intersection of rect with our
client rect.
* WebView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48754
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Fri, 25 Sep 2009 14:01:52 +0000 (14:01 +0000)]
2009-09-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
Reviewed by Xan Lopez.
Pop down the context menu when the page transitions to committed,
to avoid keeping a context menu out of context.
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
* webkit/webkitprivate.h:
* webkit/webkitwebview.cpp:
(destroy_menu_cb):
(webkit_web_view_forward_context_menu_event):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48753
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 25 Sep 2009 08:54:55 +0000 (08:54 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=28876
[Qt] reduce peak memory consumption of text decoding.
Patch by Yongjun Zhang <yongjun.zhang@nokia.com> on 2009-09-25
Reviewed by Ariya Hidayat.
Chop large input buffer into small buffers to reduce peak memory
during decoding.
* platform/text/qt/TextCodecQt.cpp:
(WebCore::TextCodecQt::decode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48752
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 25 Sep 2009 08:53:30 +0000 (08:53 +0000)]
[Qt] Update QWebElement API to remove script related methods.
QWebElement::evaluateScript is the only one kept, these are
removed to postpone most of the QtWebKit<->JavaScript API design
after 4.6.
https://bugs.webkit.org/show_bug.cgi?id=29708
Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2009-09-24
Reviewed by Simon Hausmann.
* Api/qwebelement.cpp:
* Api/qwebelement.h:
Methods removed:
- QWebElement::callFunction
- QWebElement::functions
- QWebElement::scriptableProperty
- QWebElement::setScriptableProperty
- QWebElement::scriptableProperties
* tests/qwebelement/tst_qwebelement.cpp:
(tst_QWebElement::evaluateScript):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48751
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 25 Sep 2009 08:19:04 +0000 (08:19 +0000)]
[Qt] Rename QWebElement::evaluateScript
to QWebElement::evaluateJavaScript.
https://bugs.webkit.org/show_bug.cgi?id=29709
Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2009-09-25
Reviewed by Simon Hausmann.
* Api/qwebelement.cpp:
(QWebElement::evaluateJavaScript):
* Api/qwebelement.h:
* tests/qwebelement/tst_qwebelement.cpp:
(tst_QWebElement::evaluateJavaScript):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48750
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 25 Sep 2009 08:18:54 +0000 (08:18 +0000)]
[Qt] Update the stypeProperty API of QWebElement.
https://bugs.webkit.org/show_bug.cgi?id=29711
Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2009-09-25
Reviewed by Simon Hausmann.
* Api/qwebelement.cpp:
(QWebElement::styleProperty):
- Merge the stypeProperty and the computedStyleProperty methods
- Remove the default value for the style resolving enum
- Rename ResolveRule to StyleResolveStrategy
(QWebElement::setStyleProperty):
- Remove the priority argument since it is possible to control the
behaviour by adding !important or removing in the value.
* Api/qwebelement.h:
* tests/qwebelement/tst_qwebelement.cpp:
(tst_QWebElement::style):
(tst_QWebElement::computedStyle):
* tests/qwebframe/tst_qwebframe.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48749
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jhoneycutt@apple.com [Fri, 25 Sep 2009 06:53:11 +0000 (06:53 +0000)]
Add a mechanism for automatically halting plug-ins.
Reviewed by Oliver Hunt and Alice Liu.
WebCore:
* GNUmakefile.am:
* WebCore.base.exp:
Update export of Page constructor.
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
Add PluginHalter.{h,cpp}, PluginHalterClient.h, and
HaltablePlugin.h.
* WebCore.xcodeproj/project.pbxproj:
Add files to Mac project.
* loader/EmptyClients.h:
Added an empty PluginHalterClient.
(WebCore::EmptyPluginHalterClient::shouldHaltPlugin):
Return false.
* page/PluginHalter.cpp: Added.
(WebCore::PluginHalter::PluginHalter):
(WebCore::PluginHalter::didStartPlugin):
Add the object to the plug-in set. If this is the only item in the set,
set m_oldestStartTime to this object's time, and start the timer.
(WebCore::PluginHalter::didStopPlugin):
Remove the plug-in from the set.
(WebCore::PluginHalter::timerFired):
Find the cut-off time as the current time minus the allowed run time;
plug-ins older than this may be halted. Iterate over the plug-ins. Find
the object with the oldest start time that is too young to be halted;
we'll use its start time to set the timer's next fire time. For all
plug-ins that are candidates to be halted, call the
PluginHalterClient's shouldHaltPlugin(). If this function returns true,
call the plug-in's halt() function. Remove these objects from the set
of tracked plug-ins. Call startTimerIfNecessary() to restart the timer.
(WebCore::PluginHalter::startTimerIfNecessary):
If the timer is set to fire, or the set of tracked plug-ins is empty,
return early. Set the timer to fire after the oldest plug-in has run
for the allowed run time.
* page/PluginHalter.h: Added.
(WebCore::PluginHalter::setPluginAllowedRunTime):
* page/PluginHalterClient.h: Added.
(WebCore::PluginHalterClient::~PluginHalterClient)
* page/Page.cpp:
(WebCore::Page::Page):
Initialize m_pluginHalterClient. Call pluginHalterEnabledStateChanged()
to create the PluginHalter if necessary.
(WebCore::Page::pluginHalterEnabledStateChanged):
If plug-in halting is enabled, create the PluginHalter. If it is
disabled, clear it.
(WebCore::Page::pluginAllowedRunTimeChanged):
If there is a plug-in halter, call its setPluginAllowedRunTime().
(WebCore::Page::didStartPlugin):
If there is a plug-in halter, call its didStartPlugin().
(WebCore::Page::didStopPlugin):
If there is a plug-in halter, call its didStopPlugin().
* page/Page.h:
Add a parameter to the Page constructor for the PluginHalterClient.
Added declarations for didStartPlugin() and didStopPlugin(), which are
called when HaltablePlugins are added to or removed from the page. Adds
pluginAllowedRunTimeChanged() and pluginHalterEnabledStateChanged() to
notify the Page when these settings are changed. Added members to hold
the PluginHalter and the PluginHalterClient.
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setPluginHalterEnabled):
If the enabled state has changed, call the Page's
pluginHalterEnabledStateChanged().
(WebCore::Settings::setPluginAllowedRunTime):
Call the Page's pluginAllowedRunTimeChanged().
* page/Settings.h:
(WebCore::Settings::pluginHalterEnabled):
(WebCore::Settings::pluginAllowedRunTime):
* page/HaltablePlugin.h: Added. Defines an interface for plug-ins that
can be automatically halted.
(WebCore::HaltablePlugin::~HaltablePlugin)
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::dataChanged):
Pass a dummy PluginHalterClient.
WebKit/gtk/:
* webkit/webkitwebview.cpp:
(webkit_web_view_init):
Pass 0 for new Page constructor argument.
WebKit/mac/:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
Pass 0 for new Page constructor argument.
WebKit/qt/:
* Api/qwebpage.cpp:
(QWebPagePrivate::QWebPagePrivate):
Pass 0 for new Page constructor argument.
WebKit/win:
* Interfaces/IWebPluginHalterDelegate.idl: Added. Defines an interface
for a delegate that determines whether plug-ins should be halted.
* Interfaces/IWebPreferencesPrivate.idl:
Declare functions to get and set the enabled state of the plug-in
halter and the plug-in allowed run time.
* Interfaces/IWebViewPrivate.idl:
Declare functions to get and set the IWebPluginHalterDelegate.
* Interfaces/WebKit.idl:
* WebCoreSupport/WebPluginHalterClient.cpp: Added.
(WebPluginHalterClient::WebPluginHalterClient):
(WebPluginHalterClient::shouldHaltPlugin):
Get the IWebPluginHalterDelegate for the WebView. Create a WebKit
DOMNode for the WebCore Node. Call the delegate's shouldHaltPlugin().
If the call fails, return false. Otherwise, return the result of the
call.
* WebCoreSupport/WebPluginHalterClient.h: Added.
* WebKit.vcproj/Interfaces.vcproj:
Add IWebPluginHalterDelegate.idl.
* WebKit.vcproj/WebKit.vcproj:
Add WebPluginHalterClient.{h,cpp}.
* WebPreferenceKeysPrivate.h:
Define WebKitPluginHalterEnabledPreferenceKey and
WebKitPluginAllowedRunTimePreferenceKey.
* WebPreferences.cpp:
(WebPreferences::initializeDefaultSettings):
Leave plug-in halting disabled by default. Set the default value for
the plug-in allowed run time to the max value of an unsigned int.
(WebPreferences::setPluginHalterEnabled):
(WebPreferences::pluginHalterEnabled):
(WebPreferences::setPluginAllowedRunTime):
(WebPreferences::pluginAllowedRunTime):
* WebPreferences.h:
* WebView.cpp:
(WebView::close):
Clear the IWebPluginHalterDelegate.
(WebView::initWithFrame):
Pass a WebPluginHalterClient when creating the Page.
(WebView::notifyPreferencesChanged):
Set the new settings when the preferences changed notification is
received.
(WebView::setPluginHalterDelegate):
(WebView::pluginHalterDelegate):
* WebView.h:
Declare overrides of setPluginHalterDelegate() and
pluginHalterDelegate(). Added a member to track the
IWebPluginHalterDelegate.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48748
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
xan@webkit.org [Fri, 25 Sep 2009 06:26:18 +0000 (06:26 +0000)]
2009-09-24 Xan Lopez <xlopez@igalia.com>
Reviewed by Mark "Do It!" Rowe.
Some GCC versions don't like C++-style comments in preprocessor
directives, change to C-style to shut them up.
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@48747
268f45cc-cd09-0410-ab3c-
d52691b4dbfc