oliver@apple.com [Tue, 24 Jun 2008 21:19:56 +0000 (21:19 +0000)]
Groundwork for reimplementing the slow script dialog
Reviewed by Cameron.
Add special loop opcodes as groundwork for slow script
termination. Also added a few assertions to prevent us
from accidentally coalescing conditional jump operands
in a way that might bypass the slow script opcodes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34777
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Tue, 24 Jun 2008 21:02:38 +0000 (21:02 +0000)]
WebKitTools:
2008-06-24 Sam Weinig and Beth Dakin <bdakin@apple.com and sam@webkit.org>
Reviewed by Darin.
Fix for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests
This patch adds some basic support for accessibility layout tests
on the Mac.
* DumpRenderTree/AccessibilityController.cpp: Added.
(AccessibilityController::AccessibilityController):
(AccessibilityController::~AccessibilityController):
(dumpCurrentAttributesCallback):
(AccessibilityController::makeWindowObject):
(AccessibilityController::getJSClass):
(AccessibilityController::staticFunctions):
* DumpRenderTree/AccessibilityController.h: Added.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/mac/AccessibilityControllerMac.mm: Added.
(descriptionOfValue):
(AccessibilityController::dumpCurrentAttributes):
* DumpRenderTree/mac/DumpRenderTree.mm:
* DumpRenderTree/mac/FrameLoadDelegate.h:
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(-[FrameLoadDelegate init]):
(-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):
LayoutTests:
2008-06-24 Sam Weinig and Beth Dakin <bdakin@apple.com and sam@webkit.org>
Reviewed by Darin.
First test for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests
* accessibility: Added.
* accessibility/document-attributes-expected.txt: Added.
* accessibility/document-attributes.html: Added.
* platform/gtk/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34776
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 24 Jun 2008 20:09:42 +0000 (20:09 +0000)]
WebCore:
2008-06-24 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Add support for loadstart, abort and error events for XMLHttpRequests.
Tests: http/tests/xmlhttprequest/onabort-event.html
http/tests/xmlhttprequest/onerror-event.html
http/tests/xmlhttprequest/onloadstart-event.html
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::mark):
(WebCore::JSXMLHttpRequest::onreadystatechange):
(WebCore::JSXMLHttpRequest::onabort):
(WebCore::JSXMLHttpRequest::setOnabort):
(WebCore::JSXMLHttpRequest::onerror):
(WebCore::JSXMLHttpRequest::setOnerror):
(WebCore::JSXMLHttpRequest::onload):
(WebCore::JSXMLHttpRequest::onloadstart):
(WebCore::JSXMLHttpRequest::setOnloadstart):
(WebCore::JSXMLHttpRequest::onprogress):
* dom/EventNames.h:
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::callReadyStateChangeListener):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::abort):
(WebCore::XMLHttpRequest::networkError):
(WebCore::XMLHttpRequest::abortError):
(WebCore::XMLHttpRequest::didFail):
(WebCore::XMLHttpRequest::updateAndDispatchOnProgress):
(WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
(WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent):
(WebCore::XMLHttpRequest::dispatchAbortEvent):
(WebCore::XMLHttpRequest::dispatchErrorEvent):
(WebCore::XMLHttpRequest::dispatchLoadEvent):
(WebCore::XMLHttpRequest::dispatchLoadStartEvent):
(WebCore::XMLHttpRequest::dispatchProgressEvent):
* xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::setOnAbortListener):
(WebCore::XMLHttpRequest::onAbortListener):
(WebCore::XMLHttpRequest::setOnErrorListener):
(WebCore::XMLHttpRequest::onErrorListener):
(WebCore::XMLHttpRequest::setOnLoadStartListener):
(WebCore::XMLHttpRequest::onLoadStartListener):
* xml/XMLHttpRequest.idl:
LayoutTests:
2008-06-24 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Add tests for loadstart, abort and error events for XMLHttpRequests
* http/tests/xmlhttprequest/onabort-event-expected.txt: Added.
* http/tests/xmlhttprequest/onabort-event.html: Added.
* http/tests/xmlhttprequest/onerror-event-expected.txt: Added.
* http/tests/xmlhttprequest/onerror-event.html: Added.
* http/tests/xmlhttprequest/onloadstart-event-expected.txt: Added.
* http/tests/xmlhttprequest/onloadstart-event.html: Added.
* http/tests/xmlhttprequest/resources/get.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34775
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan@apple.com [Tue, 24 Jun 2008 20:03:20 +0000 (20:03 +0000)]
2008-06-24 John Sullivan <sullivan@apple.com>
Reviewed by Dan Bernstein
* Scripts/extract-localizable-strings:
add UI_STRING_LOCALIZE_LATER, LPCTSTR_UI_STRING_LOCALIZE_LATER, and LOG_WARNING to the
list of debugging macros, to avoid noise when keeping the list of localized string
exceptions up to date
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34774
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 24 Jun 2008 20:00:48 +0000 (20:00 +0000)]
2008-06-24 Darin Adler <darin@apple.com>
Reviewed by Cameron.
- fix https://bugs.webkit.org/show_bug.cgi?id=19739
REGRESSION: fast/js/property-getters-and-setters.html fails
* kjs/JSObject.cpp:
(KJS::JSObject::put): Remove an untested optimization I checked in by accident.
The two loops up the prototype chain both need to start from this; instead the
second loop was starting where the first loop left off.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34773
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 24 Jun 2008 19:56:58 +0000 (19:56 +0000)]
2008-06-24 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5957606>
CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::DocumentLoader::cancelPendingSubstituteLoad + 23
Remove the loader from the document loader after calling didFail, so that the loader will be deferred corectly
in case the call do didFail starts a new run loop.
* loader/NetscapePlugInStreamLoader.cpp:
(WebCore::NetscapePlugInStreamLoader::didCancel):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34772
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 24 Jun 2008 19:54:09 +0000 (19:54 +0000)]
WebKitTools:
Rubber-stamped by Darin Adler.
- add a font family for testing font-weight
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linker
flags to create data sections for the WeightWatcher fonts.
* DumpRenderTree/fonts: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher100.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher200.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher300.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher400.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher500.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher600.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher700.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher800.ttf: Added.
* DumpRenderTree/fonts/WebKitWeightWatcher900.ttf: Added.
* DumpRenderTree/mac/DumpRenderTree.mm:
(activateFonts): Renamed activateAhemFont to this and made it activate
the WeightWatcher fonts in addition to Ahem.
(prepareConsistentTestingEnvironment): Adjusted for the name change.
* DumpRenderTree/win/DumpRenderTree.cpp:
(initialize): Added the WeightWatcher fonts.
LayoutTests:
Rubber-stamped by Darin Adler.
- add font-weight test for a family that has 9 weights
* fast/css/font-weight-1.html: Added.
* platform/mac/fast/css/font-weight-1-expected.checksum: Added.
* platform/mac/fast/css/font-weight-1-expected.png: Added.
* platform/mac/fast/css/font-weight-1-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34771
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Tue, 24 Jun 2008 19:50:50 +0000 (19:50 +0000)]
Build fix.
* kjs/nodes.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34770
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan@apple.com [Tue, 24 Jun 2008 18:06:37 +0000 (18:06 +0000)]
2008-06-24 John Sullivan <sullivan@apple.com>
Rubber-stamped by Sam Weinig
* StringsNotToBeLocalized.txt:
brought this file up to date
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34769
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Tue, 24 Jun 2008 15:43:08 +0000 (15:43 +0000)]
Release build fix.
* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
(WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
* bindings/js/JSCustomSQLTransactionCallback.cpp:
(WebCore::JSCustomSQLTransactionCallback::handleEvent):
Initialize callbackCallType, as the compiler is not smart enough to figure out data flow.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34768
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 14:33:32 +0000 (14:33 +0000)]
2008-06-24 Joerg Bornemann <joerg.bornemann@trolltech.com>
Reviewed by Simon.
For the Qt build on Windows don't depend on the presence of GNU CPP
but use MSVC's preprocessor instead.
dftables accepts a --preprocessor option which is set in pcre.pri for MSVC platforms.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34767
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Tue, 24 Jun 2008 12:35:52 +0000 (12:35 +0000)]
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19723
REGRESSION(r34648): Some SVG tests crash when running under --threaded
* rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::destroy): Do not attempt
to paint during document destruction, because rendering structures are not kept in a
consistent state then.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34766
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 11:28:55 +0000 (11:28 +0000)]
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19727
Return bool from GraphicsContext::getShadow() so the tests aren't duplicated so
many times in Cairo and Qt ports.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34765
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 10:58:32 +0000 (10:58 +0000)]
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=18459
Clean up and remove unused platform shadow code.
Minor edits by Simon, removed unused TextShadow struct.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34764
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 10:35:53 +0000 (10:35 +0000)]
2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=18459
Implemented basic text-shadow support for the Qt port.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34763
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 10:27:40 +0000 (10:27 +0000)]
Fix the Qt build, adapt to various JSCore API changes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34762
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Tue, 24 Jun 2008 10:07:30 +0000 (10:07 +0000)]
Remove XMLHttpRequestProgressEvent.cpp from more project files.
* GNUmakefile.am:
* WebCore.pro:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34761
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Tue, 24 Jun 2008 09:51:07 +0000 (09:51 +0000)]
Reviewed by Cameron Zwarich.
Make ParserRefCountedCounter actually perform a leak check.
* kjs/nodes.cpp:
(KJS::ParserRefCountedCounter::~ParserRefCountedCounter): Check for leaks in destructor,
not in constructor.
(KJS::ParserRefCountedCounter::increment):
(KJS::ParserRefCountedCounter::decrement):
(KJS::ParserRefCounted::ParserRefCounted):
(KJS::ParserRefCounted::~ParserRefCounted):
While at it, also made counting thread-safe.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34760
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 09:39:39 +0000 (09:39 +0000)]
2008-06-24 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
For the Qt port, fix linking with MinGW.
* WebCore.pro:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34759
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Tue, 24 Jun 2008 09:38:40 +0000 (09:38 +0000)]
2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19730: REGRESSION (r34497): Text in alerts in "Leisure suit Larry" is not wrapped
<https://bugs.webkit.org/show_bug.cgi?id=19730>
Do not convert the pair (less, jtrue) to jless when jtrue is a jump
target. An example of this is when the condition of a while loop is a
LogicalOrNode.
JavaScriptCore:
* VM/CodeGenerator.cpp:
(KJS::CodeGenerator::emitLabel):
LayoutTests:
* fast/js/codegen-loops-logical-nodes-expected.txt: Added.
* fast/js/codegen-loops-logical-nodes.html: Added.
* fast/js/resources/codegen-loops-logical-nodes.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34758
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Tue, 24 Jun 2008 09:06:07 +0000 (09:06 +0000)]
2008-06-20 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Adam Roben.
Fix compile with MinGW.
* kjs/Shell.cpp:
* wtf/Threading.h:
(WTF::atomicIncrement):
(WTF::atomicDecrement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34757
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 24 Jun 2008 05:34:24 +0000 (05:34 +0000)]
Prepration for returning memory to the OS on Windows. Track whether a portion of a span of memory was returned to the OS.
If it was, ask that it be recommitted before returning it to the application as an allocated region.
Reviewed by Oliver Hunt.
* wtf/FastMalloc.cpp:
(WTF::TCMalloc_PageHeap::New): If the span was decommitted, ask that it be recommitted before returning it.
(WTF::TCMalloc_PageHeap::AllocLarge): Ditto.
(WTF::TCMalloc_PageHeap::Carve): When splitting a span, ensure that the decommitted state propogates to the two new spans.
(WTF::TCMalloc_PageHeap::Delete): When merging a span, ensure that the resulting span is marked as decommitted if any of the
spans being merged were marked as decommitted.
(WTF::TCMalloc_PageHeap::IncrementalScavenge): Mark as decommitted after releasing the span.
(WTF::TCMalloc_Central_FreeList::FetchFromSpans): Add an assertion to catch a decommitted span being returned to the application
without first being recommitted.
(WTF::TCMalloc_Central_FreeList::Populate): Ditto.
* wtf/TCSystemAlloc.cpp: Stub out TCMalloc_SystemCommit.
* wtf/TCSystemAlloc.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34756
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 24 Jun 2008 05:34:21 +0000 (05:34 +0000)]
Remove the sample member of Span when NO_TCMALLOC_SAMPLES is defined.
Reviewed by Sam Weinig.
* wtf/FastMalloc.cpp:
(WTF::TCMalloc_PageHeap::Delete): Only update Span::sample if NO_TCMALLOC_SAMPLES is not defined.
(WTF::TCMallocStats::do_free): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34755
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 24 Jun 2008 05:23:17 +0000 (05:23 +0000)]
JavaScriptCore:
2008-06-23 Darin Adler <darin@apple.com>
Reviewed by Geoff.
- work toward https://bugs.webkit.org/show_bug.cgi?id=19721
More preparation toward making functions work on primitive types without
creating wrapper objects. No speedup this time, but prepares for a future
speedup without slowing things down.
SunSpider reports no change.
- Eliminated the implementsCall, callAsFunction and construct virtual
functions from JSObject. Instead, the CallData and ConstructData for
a native function includes a function pointer that the caller can use
directly. Changed all call sites to use CallData and ConstructData.
- Changed the "this" argument to native functions to be a JSValue rather
than a JSObject. This prepares us for passing primitives into these
functions. The conversion to an object now must be done inside the
function. Critically, if it's a function that can be called on a DOM
window object, then we have to be sure to call toThisObject on the
argument before we use it for anything even if it's already an object.
- Eliminated the practice of using constructor objects in the global
object to make objects of the various basic types. Since these
constructors can't be replaced by script, there's no reason to involve
a constructor object at all. Added functions to do the construction
directly.
- Made some more class members private and protected, including virtual
function overrides. This can catch code using unnecessarily slow virtual
function code paths when the type of an object is known statically. If we
later find a new reason use the members outside the class it's easy to
make them public again.
- Moved the declarations of the native implementations for functions out
of header files. These can have internal linkage and be declared inside
the source file.
- Changed PrototypeFunction to take function pointers with the right
arguments to be put directly into CallData. This eliminates the
need to have a separate PrototypeReflexiveFunction, and reveals that the
real purpose of that class included something else specific to eval --
storage of a cached global object. So renamed PrototypeReflexiveFunction
to GlobalEvalFunction.
* API/JSCallbackConstructor.cpp:
(KJS::constructJSCallback):
(KJS::JSCallbackConstructor::getConstructData):
* API/JSCallbackConstructor.h:
* API/JSCallbackFunction.cpp:
(KJS::JSCallbackFunction::implementsHasInstance):
(KJS::JSCallbackFunction::call):
(KJS::JSCallbackFunction::getCallData):
* API/JSCallbackFunction.h:
(KJS::JSCallbackFunction::classInfo):
* API/JSCallbackObject.h:
(KJS::JSCallbackObject::classRef):
(KJS::JSCallbackObject::classInfo):
* API/JSCallbackObjectFunctions.h:
(KJS::::getConstructData):
(KJS::::construct):
(KJS::::getCallData):
(KJS::::call):
* API/JSObjectRef.cpp:
(JSObjectMakeFunction):
(JSObjectIsFunction):
(JSObjectCallAsFunction):
(JSObjectCallAsConstructor):
* JavaScriptCore.exp:
* VM/Machine.cpp:
(KJS::jsTypeStringForValue):
(KJS::Machine::privateExecute):
* kjs/ArrayPrototype.cpp:
(KJS::arrayProtoFuncToString):
(KJS::arrayProtoFuncToLocaleString):
(KJS::arrayProtoFuncJoin):
(KJS::arrayProtoFuncConcat):
(KJS::arrayProtoFuncPop):
(KJS::arrayProtoFuncPush):
(KJS::arrayProtoFuncReverse):
(KJS::arrayProtoFuncShift):
(KJS::arrayProtoFuncSlice):
(KJS::arrayProtoFuncSort):
(KJS::arrayProtoFuncSplice):
(KJS::arrayProtoFuncUnShift):
(KJS::arrayProtoFuncFilter):
(KJS::arrayProtoFuncMap):
(KJS::arrayProtoFuncEvery):
(KJS::arrayProtoFuncForEach):
(KJS::arrayProtoFuncSome):
(KJS::arrayProtoFuncIndexOf):
(KJS::arrayProtoFuncLastIndexOf):
(KJS::ArrayConstructor::ArrayConstructor):
(KJS::constructArrayWithSizeQuirk):
(KJS::constructWithArrayConstructor):
(KJS::ArrayConstructor::getConstructData):
(KJS::callArrayConstructor):
(KJS::ArrayConstructor::getCallData):
* kjs/ArrayPrototype.h:
* kjs/BooleanObject.cpp:
(KJS::booleanProtoFuncToString):
(KJS::booleanProtoFuncValueOf):
(KJS::constructBoolean):
(KJS::constructWithBooleanConstructor):
(KJS::BooleanConstructor::getConstructData):
(KJS::callBooleanConstructor):
(KJS::BooleanConstructor::getCallData):
(KJS::constructBooleanFromImmediateBoolean):
* kjs/BooleanObject.h:
* kjs/CallData.h:
(KJS::):
* kjs/ConstructData.h:
(KJS::):
* kjs/FunctionPrototype.cpp:
(KJS::callFunctionPrototype):
(KJS::FunctionPrototype::getCallData):
(KJS::functionProtoFuncToString):
(KJS::functionProtoFuncApply):
(KJS::functionProtoFuncCall):
(KJS::constructWithFunctionConstructor):
(KJS::FunctionConstructor::getConstructData):
(KJS::callFunctionConstructor):
(KJS::FunctionConstructor::getCallData):
(KJS::constructFunction):
* kjs/FunctionPrototype.h:
* kjs/JSArray.cpp:
(KJS::AVLTreeAbstractorForArrayCompare::compare_key_key):
(KJS::JSArray::sort):
(KJS::constructEmptyArray):
(KJS::constructArray):
* kjs/JSArray.h:
(KJS::JSArray::classInfo):
* kjs/JSFunction.cpp:
(KJS::JSFunction::call):
(KJS::globalFuncEval):
(KJS::globalFuncParseInt):
(KJS::globalFuncParseFloat):
(KJS::globalFuncIsNaN):
(KJS::globalFuncIsFinite):
(KJS::globalFuncDecodeURI):
(KJS::globalFuncDecodeURIComponent):
(KJS::globalFuncEncodeURI):
(KJS::globalFuncEncodeURIComponent):
(KJS::globalFuncEscape):
(KJS::globalFuncUnescape):
(KJS::globalFuncKJSPrint):
(KJS::PrototypeFunction::PrototypeFunction):
(KJS::PrototypeFunction::getCallData):
(KJS::GlobalEvalFunction::GlobalEvalFunction):
(KJS::GlobalEvalFunction::mark):
* kjs/JSFunction.h:
(KJS::InternalFunction::classInfo):
(KJS::InternalFunction::functionName):
(KJS::JSFunction::classInfo):
(KJS::GlobalEvalFunction::cachedGlobalObject):
* kjs/JSGlobalObject.cpp:
(KJS::JSGlobalObject::reset):
(KJS::JSGlobalObject::mark):
* kjs/JSGlobalObject.h:
(KJS::JSGlobalObject::JSGlobalObject):
(KJS::JSGlobalObject::evalFunction):
* kjs/JSImmediate.cpp:
(KJS::JSImmediate::toObject):
* kjs/JSNotAnObject.cpp:
* kjs/JSNotAnObject.h:
* kjs/JSObject.cpp:
(KJS::JSObject::put):
(KJS::callDefaultValueFunction):
(KJS::JSObject::defaultValue):
(KJS::JSObject::lookupGetter):
(KJS::JSObject::lookupSetter):
(KJS::JSObject::hasInstance):
(KJS::JSObject::fillGetterPropertySlot):
(KJS::Error::create):
(KJS::constructEmptyObject):
* kjs/JSObject.h:
(KJS::GetterSetter::GetterSetter):
(KJS::GetterSetter::getter):
(KJS::GetterSetter::setGetter):
(KJS::GetterSetter::setter):
(KJS::GetterSetter::setSetter):
* kjs/JSValue.cpp:
(KJS::JSCell::deleteProperty):
(KJS::call):
(KJS::construct):
* kjs/JSValue.h:
* kjs/MathObject.cpp:
(KJS::mathProtoFuncAbs):
(KJS::mathProtoFuncACos):
(KJS::mathProtoFuncASin):
(KJS::mathProtoFuncATan):
(KJS::mathProtoFuncATan2):
(KJS::mathProtoFuncCeil):
(KJS::mathProtoFuncCos):
(KJS::mathProtoFuncExp):
(KJS::mathProtoFuncFloor):
(KJS::mathProtoFuncLog):
(KJS::mathProtoFuncMax):
(KJS::mathProtoFuncMin):
(KJS::mathProtoFuncPow):
(KJS::mathProtoFuncRandom):
(KJS::mathProtoFuncRound):
(KJS::mathProtoFuncSin):
(KJS::mathProtoFuncSqrt):
(KJS::mathProtoFuncTan):
* kjs/MathObject.h:
* kjs/NumberObject.cpp:
(KJS::numberProtoFuncToString):
(KJS::numberProtoFuncToLocaleString):
(KJS::numberProtoFuncValueOf):
(KJS::numberProtoFuncToFixed):
(KJS::numberProtoFuncToExponential):
(KJS::numberProtoFuncToPrecision):
(KJS::NumberConstructor::NumberConstructor):
(KJS::constructWithNumberConstructor):
(KJS::NumberConstructor::getConstructData):
(KJS::callNumberConstructor):
(KJS::NumberConstructor::getCallData):
(KJS::constructNumber):
(KJS::constructNumberFromImmediateNumber):
* kjs/NumberObject.h:
(KJS::NumberObject::classInfo):
(KJS::NumberConstructor::classInfo):
* kjs/PropertySlot.cpp:
(KJS::PropertySlot::functionGetter):
* kjs/RegExpObject.cpp:
(KJS::regExpProtoFuncTest):
(KJS::regExpProtoFuncExec):
(KJS::regExpProtoFuncCompile):
(KJS::regExpProtoFuncToString):
(KJS::callRegExpObject):
(KJS::RegExpObject::getCallData):
(KJS::constructRegExp):
(KJS::constructWithRegExpConstructor):
(KJS::RegExpConstructor::getConstructData):
(KJS::callRegExpConstructor):
(KJS::RegExpConstructor::getCallData):
* kjs/RegExpObject.h:
(KJS::RegExpConstructor::classInfo):
* kjs/Shell.cpp:
(GlobalObject::GlobalObject):
(functionPrint):
(functionDebug):
(functionGC):
(functionVersion):
(functionRun):
(functionLoad):
(functionReadline):
(functionQuit):
* kjs/date_object.cpp:
(KJS::gmtoffset):
(KJS::formatLocaleDate):
(KJS::fillStructuresUsingDateArgs):
(KJS::DateInstance::getTime):
(KJS::DateInstance::getUTCTime):
(KJS::DateConstructor::DateConstructor):
(KJS::constructDate):
(KJS::DateConstructor::getConstructData):
(KJS::callDate):
(KJS::DateConstructor::getCallData):
(KJS::dateParse):
(KJS::dateNow):
(KJS::dateUTC):
(KJS::dateProtoFuncToString):
(KJS::dateProtoFuncToUTCString):
(KJS::dateProtoFuncToDateString):
(KJS::dateProtoFuncToTimeString):
(KJS::dateProtoFuncToLocaleString):
(KJS::dateProtoFuncToLocaleDateString):
(KJS::dateProtoFuncToLocaleTimeString):
(KJS::dateProtoFuncValueOf):
(KJS::dateProtoFuncGetTime):
(KJS::dateProtoFuncGetFullYear):
(KJS::dateProtoFuncGetUTCFullYear):
(KJS::dateProtoFuncToGMTString):
(KJS::dateProtoFuncGetMonth):
(KJS::dateProtoFuncGetUTCMonth):
(KJS::dateProtoFuncGetDate):
(KJS::dateProtoFuncGetUTCDate):
(KJS::dateProtoFuncGetDay):
(KJS::dateProtoFuncGetUTCDay):
(KJS::dateProtoFuncGetHours):
(KJS::dateProtoFuncGetUTCHours):
(KJS::dateProtoFuncGetMinutes):
(KJS::dateProtoFuncGetUTCMinutes):
(KJS::dateProtoFuncGetSeconds):
(KJS::dateProtoFuncGetUTCSeconds):
(KJS::dateProtoFuncGetMilliSeconds):
(KJS::dateProtoFuncGetUTCMilliseconds):
(KJS::dateProtoFuncGetTimezoneOffset):
(KJS::dateProtoFuncSetTime):
(KJS::setNewValueFromTimeArgs):
(KJS::setNewValueFromDateArgs):
(KJS::dateProtoFuncSetMilliSeconds):
(KJS::dateProtoFuncSetUTCMilliseconds):
(KJS::dateProtoFuncSetSeconds):
(KJS::dateProtoFuncSetUTCSeconds):
(KJS::dateProtoFuncSetMinutes):
(KJS::dateProtoFuncSetUTCMinutes):
(KJS::dateProtoFuncSetHours):
(KJS::dateProtoFuncSetUTCHours):
(KJS::dateProtoFuncSetDate):
(KJS::dateProtoFuncSetUTCDate):
(KJS::dateProtoFuncSetMonth):
(KJS::dateProtoFuncSetUTCMonth):
(KJS::dateProtoFuncSetFullYear):
(KJS::dateProtoFuncSetUTCFullYear):
(KJS::dateProtoFuncSetYear):
(KJS::dateProtoFuncGetYear):
* kjs/date_object.h:
(KJS::DateInstance::internalNumber):
(KJS::DateInstance::classInfo):
* kjs/error_object.cpp:
(KJS::errorProtoFuncToString):
(KJS::constructError):
(KJS::constructWithErrorConstructor):
(KJS::ErrorConstructor::getConstructData):
(KJS::callErrorConstructor):
(KJS::ErrorConstructor::getCallData):
(KJS::NativeErrorConstructor::construct):
(KJS::constructWithNativeErrorConstructor):
(KJS::NativeErrorConstructor::getConstructData):
(KJS::callNativeErrorConstructor):
(KJS::NativeErrorConstructor::getCallData):
* kjs/error_object.h:
(KJS::NativeErrorConstructor::classInfo):
* kjs/internal.cpp:
(KJS::JSNumberCell::toObject):
(KJS::JSNumberCell::toThisObject):
(KJS::GetterSetter::mark):
(KJS::GetterSetter::toPrimitive):
(KJS::GetterSetter::toBoolean):
(KJS::GetterSetter::toNumber):
(KJS::GetterSetter::toString):
(KJS::GetterSetter::toObject):
(KJS::InternalFunction::InternalFunction):
(KJS::InternalFunction::implementsHasInstance):
* kjs/lookup.h:
(KJS::HashEntry::):
* kjs/nodes.cpp:
(KJS::FuncDeclNode::makeFunction):
(KJS::FuncExprNode::makeFunction):
* kjs/object_object.cpp:
(KJS::objectProtoFuncValueOf):
(KJS::objectProtoFuncHasOwnProperty):
(KJS::objectProtoFuncIsPrototypeOf):
(KJS::objectProtoFuncDefineGetter):
(KJS::objectProtoFuncDefineSetter):
(KJS::objectProtoFuncLookupGetter):
(KJS::objectProtoFuncLookupSetter):
(KJS::objectProtoFuncPropertyIsEnumerable):
(KJS::objectProtoFuncToLocaleString):
(KJS::objectProtoFuncToString):
(KJS::ObjectConstructor::ObjectConstructor):
(KJS::constructObject):
(KJS::constructWithObjectConstructor):
(KJS::ObjectConstructor::getConstructData):
(KJS::callObjectConstructor):
(KJS::ObjectConstructor::getCallData):
* kjs/object_object.h:
* kjs/string_object.cpp:
(KJS::replace):
(KJS::stringProtoFuncToString):
(KJS::stringProtoFuncValueOf):
(KJS::stringProtoFuncCharAt):
(KJS::stringProtoFuncCharCodeAt):
(KJS::stringProtoFuncConcat):
(KJS::stringProtoFuncIndexOf):
(KJS::stringProtoFuncLastIndexOf):
(KJS::stringProtoFuncMatch):
(KJS::stringProtoFuncSearch):
(KJS::stringProtoFuncReplace):
(KJS::stringProtoFuncSlice):
(KJS::stringProtoFuncSplit):
(KJS::stringProtoFuncSubstr):
(KJS::stringProtoFuncSubstring):
(KJS::stringProtoFuncToLowerCase):
(KJS::stringProtoFuncToUpperCase):
(KJS::stringProtoFuncToLocaleLowerCase):
(KJS::stringProtoFuncToLocaleUpperCase):
(KJS::stringProtoFuncLocaleCompare):
(KJS::stringProtoFuncBig):
(KJS::stringProtoFuncSmall):
(KJS::stringProtoFuncBlink):
(KJS::stringProtoFuncBold):
(KJS::stringProtoFuncFixed):
(KJS::stringProtoFuncItalics):
(KJS::stringProtoFuncStrike):
(KJS::stringProtoFuncSub):
(KJS::stringProtoFuncSup):
(KJS::stringProtoFuncFontcolor):
(KJS::stringProtoFuncFontsize):
(KJS::stringProtoFuncAnchor):
(KJS::stringProtoFuncLink):
(KJS::stringFromCharCode):
(KJS::StringConstructor::StringConstructor):
(KJS::constructWithStringConstructor):
(KJS::StringConstructor::getConstructData):
(KJS::callStringConstructor):
(KJS::StringConstructor::getCallData):
* kjs/string_object.h:
JavaScriptGlue:
2008-06-23 Darin Adler <darin@apple.com>
Reviewed by Geoff.
* JSValueWrapper.cpp:
(JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
of the old callAsFunction.
WebCore:
2008-06-23 Darin Adler <darin@apple.com>
Reviewed by Geoff.
Update for JavaScript changes.
- Use CallData and ConstructData instead of the obsolete implementsCall,
callAsFunction, and construct functions.
- Updated native function arguments, specifically to allow a JSValue
rather than a JSObject for the this argument, and to call toThisObject
as needed when treating it as an object.
- Made some more class members private and protected, including virtual
function overrides.
- Eliminated the use of getCallData in the JavaScript bridging code as
a way to check if an instance supports invokeDefaultMethod.
- Eliminated unnecessary polymorphism in the NodeIterator and TreeWalker
classes. They were using virtual functions simply to share an instance
of the RefCounted template, which was not helpful.
* bindings/js/JSAudioConstructor.cpp:
(WebCore::constructAudio):
(WebCore::JSAudioConstructor::getConstructData):
* bindings/js/JSAudioConstructor.h:
(WebCore::JSAudioConstructor::document):
(WebCore::JSAudioConstructor::classInfo):
* bindings/js/JSClipboardCustom.cpp:
(WebCore::JSClipboard::types):
* bindings/js/JSCustomSQLStatementCallback.cpp:
(WebCore::JSCustomSQLStatementCallback::handleEvent):
* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
(WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
* bindings/js/JSCustomSQLTransactionCallback.cpp:
(WebCore::JSCustomSQLTransactionCallback::handleEvent):
* bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
(WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
* bindings/js/JSCustomVoidCallback.cpp:
(WebCore::JSCustomVoidCallback::handleEvent):
* bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
* bindings/js/JSDOMBinding.h:
(WebCore::DOMObject::DOMObject):
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::windowProtoFuncAToB):
(WebCore::windowProtoFuncBToA):
(WebCore::windowProtoFuncOpen):
(WebCore::windowProtoFuncSetTimeout):
(WebCore::windowProtoFuncClearTimeout):
(WebCore::windowProtoFuncSetInterval):
(WebCore::windowProtoFuncAddEventListener):
(WebCore::windowProtoFuncRemoveEventListener):
(WebCore::windowProtoFuncShowModalDialog):
(WebCore::windowProtoFuncNotImplemented):
(WebCore::toJSDOMWindow):
* bindings/js/JSDOMWindowBase.h:
* bindings/js/JSDOMWindowShell.h:
(WebCore::JSDOMWindowShell::classInfo):
* bindings/js/JSEventListener.cpp:
(WebCore::JSAbstractEventListener::handleEvent):
(WebCore::JSLazyEventListener::parseCode):
* bindings/js/JSEventTargetBase.cpp:
(WebCore::retrieveEventTargetAndCorrespondingNode):
(WebCore::jsEventTargetAddEventListener):
(WebCore::jsEventTargetRemoveEventListener):
(WebCore::jsEventTargetDispatchEvent):
* bindings/js/JSEventTargetBase.h:
* bindings/js/JSHTMLAppletElementCustom.cpp:
(WebCore::JSHTMLAppletElement::customGetOwnPropertySlot):
(WebCore::JSHTMLAppletElement::customPut):
(WebCore::JSHTMLAppletElement::getCallData):
* bindings/js/JSHTMLCollectionCustom.cpp:
(WebCore::callHTMLCollection):
(WebCore::JSHTMLCollection::getCallData):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::open):
* bindings/js/JSHTMLEmbedElementCustom.cpp:
(WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot):
(WebCore::JSHTMLEmbedElement::customPut):
(WebCore::JSHTMLEmbedElement::getCallData):
* bindings/js/JSHTMLInputElementBase.cpp:
(WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
* bindings/js/JSHTMLInputElementBase.h:
* bindings/js/JSHTMLObjectElementCustom.cpp:
(WebCore::JSHTMLObjectElement::customGetOwnPropertySlot):
(WebCore::JSHTMLObjectElement::customPut):
(WebCore::JSHTMLObjectElement::getCallData):
* bindings/js/JSHTMLOptionElementConstructor.cpp:
(WebCore::constructHTMLOptionElement):
(WebCore::JSHTMLOptionElementConstructor::getConstructData):
* bindings/js/JSHTMLOptionElementConstructor.h:
(WebCore::JSHTMLOptionElementConstructor::document):
(WebCore::JSHTMLOptionElementConstructor::classInfo):
* bindings/js/JSImageConstructor.cpp:
(WebCore::constructImage):
(WebCore::JSImageConstructor::getConstructData):
* bindings/js/JSImageConstructor.h:
(WebCore::JSImageConstructor::document):
(WebCore::JSImageConstructor::classInfo):
* bindings/js/JSInspectedObjectWrapper.h:
(WebCore::JSInspectedObjectWrapper::classInfo):
* bindings/js/JSInspectorCallbackWrapper.cpp:
(WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
* bindings/js/JSJavaScriptCallFrameCustom.cpp:
(WebCore::JSJavaScriptCallFrame::scopeChain):
* bindings/js/JSNodeFilterCondition.cpp:
(WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
(WebCore::JSNodeFilterCondition::mark):
(WebCore::JSNodeFilterCondition::acceptNode):
* bindings/js/JSNodeFilterCondition.h:
(WebCore::JSNodeFilterCondition::create):
* bindings/js/JSNodeFilterCustom.cpp:
(WebCore::toNodeFilter):
* bindings/js/JSNodeListCustom.cpp:
(WebCore::callNodeList):
(WebCore::JSNodeList::getCallData):
(WebCore::JSNodeList::canGetItemsForName):
(WebCore::JSNodeList::nameGetter):
* bindings/js/JSPluginElementFunctions.cpp:
(WebCore::runtimeObjectGetter):
(WebCore::runtimeObjectPropertyGetter):
(WebCore::runtimeObjectCustomGetOwnPropertySlot):
(WebCore::runtimeObjectCustomPut):
(WebCore::runtimeObjectGetCallData):
(WebCore::pluginInstance):
(WebCore::getRuntimeObject):
(WebCore::callPlugin):
* bindings/js/JSPluginElementFunctions.h:
* bindings/js/JSQuarantinedObjectWrapper.cpp:
(WebCore::JSQuarantinedObjectWrapper::put):
(WebCore::JSQuarantinedObjectWrapper::construct):
(WebCore::JSQuarantinedObjectWrapper::getConstructData):
(WebCore::JSQuarantinedObjectWrapper::hasInstance):
(WebCore::JSQuarantinedObjectWrapper::call):
(WebCore::JSQuarantinedObjectWrapper::getCallData):
* bindings/js/JSQuarantinedObjectWrapper.h:
(WebCore::JSQuarantinedObjectWrapper::className):
* bindings/js/JSRGBColor.cpp:
* bindings/js/JSXMLHttpRequestConstructor.cpp:
(WebCore::constructXMLHttpRequest):
(WebCore::JSXMLHttpRequestConstructor::getConstructData):
* bindings/js/JSXMLHttpRequestConstructor.h:
(WebCore::JSXMLHttpRequestConstructor::document):
(WebCore::JSXMLHttpRequestConstructor::classInfo):
* bindings/js/JSXSLTProcessorConstructor.cpp:
(WebCore::constructXSLTProcessor):
(WebCore::JSXSLTProcessorConstructor::getConstructData):
* bindings/js/JSXSLTProcessorConstructor.h:
(WebCore::JSXSLTProcessorConstructor::classInfo):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::ScheduledAction):
(WebCore::ScheduledAction::execute):
* bindings/js/ScheduledAction.h:
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject callWebScriptMethod:withArguments:]):
* bindings/scripts/CodeGeneratorJS.pm:
* bridge/NP_jsobject.cpp:
(_NPN_InvokeDefault):
(_NPN_Invoke):
* bridge/c/c_instance.cpp:
(KJS::Bindings::CInstance::supportsInvokeDefaultMethod):
* bridge/c/c_instance.h:
* bridge/jni/jni_jsobject.mm:
(JavaJSObject::call):
* bridge/objc/objc_instance.h:
* bridge/objc/objc_instance.mm:
(ObjcInstance::supportsInvokeDefaultMethod):
* bridge/objc/objc_runtime.h:
(KJS::Bindings::ObjcFallbackObjectImp::propertyName):
(KJS::Bindings::ObjcFallbackObjectImp::classInfo):
* bridge/objc/objc_runtime.mm:
(Bindings::webScriptObjectClass):
(Bindings::webUndefinedClass):
(ObjcFallbackObjectImp::ObjcFallbackObjectImp):
(callObjCFallbackObject):
(ObjcFallbackObjectImp::getCallData):
* bridge/qt/qt_instance.h:
* bridge/runtime.cpp:
(KJS::Bindings::Instance::createRuntimeObject):
(KJS::Bindings::Instance::getInstance):
* bridge/runtime.h:
(KJS::Bindings::Field::~Field):
(KJS::Bindings::Method::~Method):
(KJS::Bindings::Class::~Class):
(KJS::Bindings::Instance::supportsInvokeDefaultMethod):
* bridge/runtime_method.cpp:
(KJS::callRuntimeMethod):
(KJS::RuntimeMethod::getCallData):
* bridge/runtime_method.h:
(KJS::RuntimeMethod::methods):
* bridge/runtime_object.cpp:
(RuntimeObjectImp::defaultValue):
(callRuntimeObject):
(RuntimeObjectImp::getCallData):
* bridge/runtime_object.h:
(KJS::RuntimeObjectImp::getInternalInstance):
(KJS::RuntimeObjectImp::classInfo):
* dom/NodeIterator.h:
* dom/Traversal.cpp:
* dom/Traversal.h:
* dom/TreeWalker.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34754
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Tue, 24 Jun 2008 03:00:21 +0000 (03:00 +0000)]
2008-06-23 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=16756
Move isAllowedToLoadLocalResources into SecurityOrigin.
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::setURL):
(WebCore::Document::initSecurityContext):
* dom/Document.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::canLoad):
* platform/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::SecurityOrigin):
(WebCore::SecurityOrigin::isLocal):
* platform/SecurityOrigin.h:
(WebCore::SecurityOrigin::protocol):
(WebCore::SecurityOrigin::host):
(WebCore::SecurityOrigin::domain):
(WebCore::SecurityOrigin::port):
(WebCore::SecurityOrigin::canLoadLocalResources):
(WebCore::SecurityOrigin::grantLoadLocalResources):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::setRequestHeader):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34753
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 24 Jun 2008 00:23:20 +0000 (00:23 +0000)]
Fix Windows build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34752
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Tue, 24 Jun 2008 00:19:25 +0000 (00:19 +0000)]
2008-06-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19716: REGRESSION (SquirrelFish): Reproducible crash after entering a username at mint.com
<https://bugs.webkit.org/show_bug.cgi?id=19716>
When unwinding callframes for exceptions, check whether the callframe
was created by a reentrant native call to JavaScript after tearing off
the local variables instead of before.
JavaScriptCore:
* VM/Machine.cpp:
(KJS::Machine::unwindCallFrame):
LayoutTests:
* fast/js/reentrant-call-unwind-expected.txt: Added.
* fast/js/reentrant-call-unwind.html: Added.
* fast/js/resources/reentrant-call-unwind.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34751
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Tue, 24 Jun 2008 00:00:32 +0000 (00:00 +0000)]
Fix a math error in my last change.
Reviewed by Ada Chan.
* platform/win/FileSystemWin.cpp:
(WebCore::openTemporaryFile):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34750
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Mon, 23 Jun 2008 23:48:23 +0000 (23:48 +0000)]
2008-06-23 Kevin McCullough <kmccullough@apple.com>
-Build fix.
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34749
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Mon, 23 Jun 2008 23:20:50 +0000 (23:20 +0000)]
<rdar://problem/6024267> VO unable to read massive emails because AccessibilityObject::lengthForVisiblePositionRange makes the string
Improves performance of asking for the length/string of text marker ranges
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34748
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 21:41:55 +0000 (21:41 +0000)]
Get testapi passing again in a debug build.
Reviewed by Oliver Hunt.
* API/testapi.c:
(main): Update the expected output of calling JSValueMakeString on a function object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34747
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Mon, 23 Jun 2008 20:58:37 +0000 (20:58 +0000)]
Added our own mechanism for generating temporary file names.
Reviewed by Ada Chan, Darin Adler.
* platform/win/FileSystemWin.cpp:
(WebCore::openTemporaryFile):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34746
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Mon, 23 Jun 2008 20:57:21 +0000 (20:57 +0000)]
2008-06-23 David Kilzer <ddkilzer@apple.com>
Updated test for Bug 15823: getPropertyValue for border returns null, should compute the shorthand value
<https://bugs.webkit.org/show_bug.cgi?id=15823>
Rubber-stamped by Darin.
* fast/css/getPropertyValue-border-expected.txt: Updated results.
* fast/css/getPropertyValue-border.html: Test all combinations of
(mismatched) border values.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34745
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 23 Jun 2008 20:33:17 +0000 (20:33 +0000)]
2008-06-23 Sam Weinig <sam@webkit.org>
Remove XMLHttpRequestProgressEvent.cpp from project files.
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34744
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 23 Jun 2008 20:30:42 +0000 (20:30 +0000)]
2008-06-23 Sam Weinig <sam@webkit.org>
Reviewed by Dave Hyatt.
Remove empty file.
* xml/XMLHttpRequestProgressEvent.cpp: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34743
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 23 Jun 2008 20:28:49 +0000 (20:28 +0000)]
2008-06-23 Sam Weinig <sam@webkit.org>
Rubber-stamped by Tim Hatcher.
Rename XMLHttpRequest::sameOriginRequest to XMLHttpRequest::makeSameOriginRequest
and XMLHttpRequest::crossSiteAccessRequest to XMLHttpRequest::makeCrossSiteAccessRequest.
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::makeSameOriginRequest):
(WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
* xml/XMLHttpRequest.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34742
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 23 Jun 2008 20:07:52 +0000 (20:07 +0000)]
2008-06-23 Sam Weinig <sam@webkit.org>
Reviewed by Alexey Proskuryakov.
Some XMLHttpRequest re-organization to aid further enhancements coming soon.
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::send): Explicitly call overloaded versions of send,
instead of always calling though send(DOMString).
* dom/Document.idl: Adds native converter.
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::open):
(WebCore::XMLHttpRequest::initSend):
(WebCore::XMLHttpRequest::send):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::sameOriginRequest):
(WebCore::XMLHttpRequest::crossSiteAccessRequest):
(WebCore::XMLHttpRequest::abort):
(WebCore::XMLHttpRequest::clearResponse):
(WebCore::XMLHttpRequest::clearRequest):
(WebCore::XMLHttpRequest::genericError):
(WebCore::XMLHttpRequest::dispatchProgressEvent):
* xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::setOnReadyStateChangeListener): Inline.
(WebCore::XMLHttpRequest::onReadyStateChangeListener): Ditto.
(WebCore::XMLHttpRequest::setOnLoadListener): Ditto.
(WebCore::XMLHttpRequest::onLoadListener): Ditto.
(WebCore::XMLHttpRequest::setOnProgressListener): Ditto.
(WebCore::XMLHttpRequest::onProgressListener): Ditto.
Makes the request entity body a member variable so that the send method
can be more easily broken up.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34741
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Mon, 23 Jun 2008 17:33:49 +0000 (17:33 +0000)]
Make profiles of the same name in the Inspector group in the
sidebar under a collapsable item that contains all the runs.
https://bugs.webkit.org/show_bug.cgi?id=19713
Reviewed by Darin Adler.
* English.lproj/localizedStrings.js: New strings.
* page/inspector/Images/profileGroupIcon.png: Added.
* page/inspector/Images/profileSmallIcon.png: Added.
* page/inspector/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype.reset): Clear _profileGroups.
Remove the "some-expandable" class from the sidebarTree.
(WebInspector.ProfilesPanel.prototype.addProfile): Append new profiles
that have the same name as a previous profile into a group. When a
group has 2 profiles a ProfileGroupSidebarTreeElement is made and the
ProfileSidebarTreeElements are appended to the group's element.
(WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle):
Return _mainTitle is it is set.
(WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle):
Set _mainTitle which is an override title.
(WebInspector.ProfileGroupSidebarTreeElement): Inherit SidebarTreeElement.
(WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
Show the last profile in the group when selected.
* page/inspector/SidebarTreeElement.js:
(WebInspector.SidebarTreeElement.prototype.get small): Return _small.
(WebInspector.SidebarTreeElement.prototype.set small): Set _small and
update the style to match.
(WebInspector.SidebarTreeElement.prototype.onattach): Set the small
class if the small property is true.
* page/inspector/inspector.css: New styles for profiles groups
and for the small profiles.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34740
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 23 Jun 2008 16:24:24 +0000 (16:24 +0000)]
2008-06-23 Anders Carlsson <andersca@apple.com>
Reviewed by Geoff.
Make changedDocuments a HashSet.
* dom/Document.cpp:
(WebCore::Document::setDocumentChanged):
(WebCore::Document::updateDocumentsRendering):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34739
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 23 Jun 2008 15:19:44 +0000 (15:19 +0000)]
2008-06-23 Benjamin C Meyer <ben@meyerhome.net>
Reviewed by Simon.
Add function to retrieve the standard context menu
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34738
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Mon, 23 Jun 2008 08:10:50 +0000 (08:10 +0000)]
Reviewed by Mark Rowe.
Restore a collectOnMainThreadOnly call that was accidentally removed in r34659. It will not
be needed when heaps are actually per-thread, but this isn't the case yet, and collecting
on a different thread causes crashes.
* bindings/js/JSDOMBinding.h:
(WebCore::DOMObject::DOMObject):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34737
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 01:30:47 +0000 (01:30 +0000)]
2008-06-22 Aaron Digulla <digulla@hepe.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=18993
Bug 18993: Update of buttons in editing toolbar demo lags behind
* demos/editingToolbar/FancyToolbar.js:
* demos/editingToolbar/index.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34736
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 01:25:50 +0000 (01:25 +0000)]
2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19465
Bug 19465: Cursor sometimes gets 'stuck' in textareas when trying to navigate with arrow keys
Test: editing/input/textarea-arrow-navigation.html
* rendering/RenderText.cpp:
(WebCore::RenderText::positionForCoordinates): In the case when the next position is to the right
of the last text box but the text offset is 0, set the affinity to DOWNSTREAM instead of UPSTREAM so
that the cursor doesn't remain on the previous line.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34735
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 01:20:07 +0000 (01:20 +0000)]
2008-06-22 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=17421
Bug 17421: Lack of end tag for SELECT element causes the rest of page to not be rendered
Test: fast/parser/input-textarea-inside-select-element.html
* html/HTMLParser.cpp:
(WebCore::HTMLParser::handleError):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34734
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 01:06:39 +0000 (01:06 +0000)]
2008-06-22 David Krause <david.krause@gmail.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19426
Bug 19426: LOW_BANDWIDTH_DISPLAY build broken
Change ref to addClient and deref to removeClient in code wrapped
by USE(LOW_BANDWIDTH_DISPLAY) to match changes in r31834.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::addLowBandwidthDisplayRequest):
(WebCore::FrameLoader::removeAllLowBandwidthDisplayRequests):
(WebCore::FrameLoader::notifyFinished):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34733
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 01:02:39 +0000 (01:02 +0000)]
2008-06-22 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19520
Bug 19520: WebKit incorrectly accepts hidden as the value of outline-style
Test: fast/css/outline-hidden-illegal-value.html
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* rendering/RenderFlow.cpp:
(WebCore::RenderFlow::paintOutline):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::paintOutline):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::outlineWidth):
(WebCore::RenderStyle::outlineOffset):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34732
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 00:58:21 +0000 (00:58 +0000)]
2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Dan Bernstein.
Fix https://bugs.webkit.org/show_bug.cgi?id=19675
Bug 19675: [GTK] negative text-shadows are not rendered
* platform/graphics/cairo/FontCairo.cpp:
(WebCore::Font::drawGlyphs): The IntSize::isEmpty() call checks that the
sizes are > 0, while we need to check for != 0.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34731
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 00:55:33 +0000 (00:55 +0000)]
2008-06-22 kuchhal <kuchhal@yahoo.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19696
Bug 19696: Memory leak in WebCore/editing/DeleteButtonController.cpp
* editing/DeleteButtonController.cpp:
(WebCore::DeleteButtonController::createDeletionUI): Delete the Image instance
if the platform resource could not be loaded.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34730
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 23 Jun 2008 00:52:31 +0000 (00:52 +0000)]
2008-06-22 kuchhal <kuchhal@yahoo.com>
Reviewed by Darin Adler.
Fix https://bugs.webkit.org/show_bug.cgi?id=19697
Bug 19697: Redundant releaseRef causing memory leak
* platform/win/ClipboardUtilitiesWin.cpp:
(WebCore::fragmentFromCF_HTML):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34729
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sun, 22 Jun 2008 01:35:58 +0000 (01:35 +0000)]
Print a blank line when exiting the jsc interactive mode to ensure that the shell
prompt will start on a new line.
Reviewed by Sam Weinig.
* kjs/Shell.cpp:
(runInteractive):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34728
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sun, 22 Jun 2008 01:35:56 +0000 (01:35 +0000)]
Tweak the paths of the items in the "tests" group to clean things up a little.
Rubber-stamped by Sam Weinig.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34727
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sun, 22 Jun 2008 01:35:53 +0000 (01:35 +0000)]
Fix jsc to link against libedit.dylib rather than libedit.2.dylib.
Rubber-stamped by Sam Weinig.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34726
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sun, 22 Jun 2008 01:35:50 +0000 (01:35 +0000)]
Copy the JavaScriptCore shell (jsc) into JavaScriptCore.framework so that it will be included in nightly builds.
https://bugs.webkit.org/show_bug.cgi?id=19691
Reviewed by Sam Weinig.
* JavaScriptCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34725
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 22 Jun 2008 01:24:32 +0000 (01:24 +0000)]
2008-06-21 Sam Weinig <sam@webkit.org>
Fix Windows build.
* bindings/scripts/CodeGeneratorCOM.pm:
* html/HTMLInputElement.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34724
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Sun, 22 Jun 2008 00:35:51 +0000 (00:35 +0000)]
Fix a typo "new" in the keywords list for hte JavaScript
syntax highlighter. And adds "get" and "set" to the keyword list.
Reviewed by Sam Weinig.
* page/inspector/SourceFrame.js:
(WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
Fixes the "new" typo and adds "get" and "set".
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34723
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 21 Jun 2008 23:49:34 +0000 (23:49 +0000)]
WebCore:
Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely
<https://bugs.webkit.org/show_bug.cgi?id=7931>
Reviewed by Darin.
Tests: fast/parser/entity-end-iframe-tag.html
fast/parser/entity-end-script-tag.html
fast/parser/entity-end-style-tag.html
fast/parser/entity-end-textarea-tag.html
fast/parser/entity-end-title-tag.html
fast/parser/entity-end-xmp-tag.html
Previously the parser accepted end tags for textarea, title and
iframe elements that contained entity-escaped characters such as
'<'. The fix is to save the position of the last entity-escaped
character converted and to use that to make sure the end tag does
not contain an escaped character.
Note that this was not an issue for script, style and xmp elements
since they already ignored entity-escaped characters.
* html/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::parseSpecial): When looking for a closing
tag, ignore any text with entity-escaped characters by making sure
lastDecodedEntityPosition is less than the first character of the
end tag.
LayoutTests:
Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely
<https://bugs.webkit.org/show_bug.cgi?id=7931>
Reviewed by Darin.
The entity-end-textarea-tag.html contains 11 test cases: one
for each character in '</textarea>'. The rest of the tests
only test one encoding: '<' as '<'.
* fast/parser/entity-end-iframe-tag-expected.txt: Added.
* fast/parser/entity-end-iframe-tag.html: Added.
* fast/parser/entity-end-script-tag-expected.txt: Added.
* fast/parser/entity-end-script-tag.html: Added.
* fast/parser/entity-end-style-tag-expected.txt: Added.
* fast/parser/entity-end-style-tag.html: Added.
* fast/parser/entity-end-textarea-tag-expected.txt: Added.
* fast/parser/entity-end-textarea-tag.html: Added.
* fast/parser/entity-end-title-tag-expected.txt: Added.
* fast/parser/entity-end-title-tag.html: Added.
* fast/parser/entity-end-xmp-tag-expected.txt: Added.
* fast/parser/entity-end-xmp-tag.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34722
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 21 Jun 2008 21:42:09 +0000 (21:42 +0000)]
WebCore:
2008-06-21 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)
Test: fast/dynamic/insertAdjacentHTML-allowed-parents.html
* html/HTMLElement.cpp:
(WebCore::HTMLElement::insertAdjacentHTML): Don't use innerHTML logic for creating
the DocumentFragment from the html string.
LayoutTests:
2008-06-21 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Test for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)
* fast/dynamic/insertAdjacentHTML-allowed-parents-expected.txt: Added.
* fast/dynamic/insertAdjacentHTML-allowed-parents.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34721
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sat, 21 Jun 2008 20:33:53 +0000 (20:33 +0000)]
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Log error messages to the console when we deny a request for a URL.
These error messages do not appear in LayoutTests, but they do
appear in the WebInspector.
* dom/XMLTokenizer.cpp:
(WebCore::shouldAllowExternalLoad):
* loader/DocLoader.cpp:
(WebCore::DocLoader::requestResource):
(WebCore::DocLoader::printAccessDeniedMessage):
* loader/DocLoader.h:
* xml/XSLTProcessor.cpp:
(WebCore::docLoaderFunc):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34720
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sat, 21 Jun 2008 20:33:42 +0000 (20:33 +0000)]
WebCore:
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Fix <https://bugs.webkit.org/show_bug.cgi?id=19649>:
XSL style sheets allowed across origins
Block cross-orgin loads of XSL style sheets, matching Internet
Explorer, Firefox, and Opera. Also, we now block loading of XBL
across origins, matching Firefox. The XBL behavior does not appear
testable because XBL seems to not be enabled.
Test: http/tests/security/cross-origin-xsl-BLOCKED.html
* loader/DocLoader.cpp:
(WebCore::DocLoader::requestResource):
LayoutTests:
2008-06-21 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=19649
Test that we block cross-orign loads of XSL style sheets.
* http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Added.
* http/tests/security/cross-origin-xsl-BLOCKED.html: Added.
* http/tests/security/resources/cross-origin-xsl.xml: Added.
* http/tests/security/resources/forbidden-stylesheet.xsl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34719
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 21 Jun 2008 19:16:21 +0000 (19:16 +0000)]
Adding bug title and URLs
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34718
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 21 Jun 2008 19:13:23 +0000 (19:13 +0000)]
2008-06-21 Marvin Decker <marv.decker@gmail.com>
Reviewed by Dave Hyatt.
Adds a NULL check for getting the small caps page of glyph data. The
page() function can explicitly return null in some cases, and every
other usage in this function does the check.
* platform/graphics/Font.cpp:
(WebCore::Font::glyphDataForCharacter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34717
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 21 Jun 2008 17:55:41 +0000 (17:55 +0000)]
Rubber-stamped by Alexey Proskuryakov.
- update results for newly-added CSS variables, file and file list
global constructors
* fast/dom/Window/window-properties-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34716
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 21 Jun 2008 17:49:07 +0000 (17:49 +0000)]
WebCore:
2008-06-21 Alex Taylor <darwin@milliamp.org>
Reviewed by Dan Bernstein.
Fixes <https://bugs.webkit.org/show_bug.cgi?id=12425>
Adds support for border-radius on legend elements.
Fieldsets with a legend and rounded borders now have a clipping region set
around the legend.
Test: fast/borders/fieldsetBorderRadius.html
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::paintBoxDecorations):
(WebCore::RenderFieldset::paintBorderMinusLegend): Removed a FIXME.
LayoutTests:
2008-06-21 Alex Taylor <darwin@milliamp.org>
Reviewed by Dan Bernstein.
<https://bugs.webkit.org/show_bug.cgi?id=12425>
Test support for border-radius on fieldset elements.
* fast/borders/fieldsetBorderRadius.html: Added.
* platform/mac/fast/borders/fieldsetBorderRadius-expected.checksum: Added.
* platform/mac/fast/borders/fieldsetBorderRadius-expected.png: Added.
* platform/mac/fast/borders/fieldsetBorderRadius-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34715
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Sat, 21 Jun 2008 17:36:18 +0000 (17:36 +0000)]
wx build fix. Adding CSSVariable* API sources to the Bakefiles.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34714
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Sat, 21 Jun 2008 08:28:19 +0000 (08:28 +0000)]
2008-06-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Mark Rowe.
Fix the build for non-Mac Darwin platforms by disabling their support
for readline in the JavaScript shell.
* kjs/config.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34713
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Sat, 21 Jun 2008 07:04:22 +0000 (07:04 +0000)]
Use member function pointers for the Profile::forEach function.
Eliminating a few static functions and simplified things a little.
Reviewed by Alexey Proskuryakov.
* JavaScriptCore.exp: Change the symbol for forEach.
* profiler/Profile.cpp:
(KJS::Profile::forEach): Use a member function pointer.
* profiler/Profile.h:
(KJS::Profile::sortTotalTimeDescending): Pass a function pointer.
(KJS::Profile::sortTotalTimeAscending): Ditto.
(KJS::Profile::sortSelfTimeDescending): Ditto.
(KJS::Profile::sortSelfTimeAscending): Ditto.
(KJS::Profile::sortCallsDescending): Ditto.
* profiler/ProfileNode.h:
(KJS::ProfileNode::sortTotalTimeDescending): No longer static.
(KJS::ProfileNode::sortTotalTimeAscending): Ditto.
(KJS::ProfileNode::sortSelfTimeDescending): Ditto.
(KJS::ProfileNode::sortSelfTimeAscending): Ditto.
(KJS::ProfileNode::sortCallsDescending): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34712
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Sat, 21 Jun 2008 06:32:25 +0000 (06:32 +0000)]
2008-06-20 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Remove unused destructors.
* kjs/nodes.cpp:
* kjs/nodes.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34711
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Sat, 21 Jun 2008 04:39:23 +0000 (04:39 +0000)]
Fixed an ASSERT(m_actualSelfTime <= m_actualTotalTime) when starting
and stopping a profile from the Develop menu. Also prevents
inserting an incorrect parent node as the new head after profiling
is stopped from the Develop menu.
Reviewed by Dan Bernstein.
* profiler/Profile.cpp:
(KJS::Profile::stopProfiling): If the current node is already the head
then there is no more need to record future nodes in didExecute.
(KJS::Profile::didExecute): Move the code of setupCurrentNodeAsStopped
into here since this was the only caller. When setting the total time
keep any current total time while adding the self time of the head.
(KJS::Profile::setupCurrentNodeAsStopped): Removed.
* profiler/Profile.h: Removed setupCurrentNodeAsStopped.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34710
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 21 Jun 2008 01:22:37 +0000 (01:22 +0000)]
2008-06-20 Sam Weinig <sam@webkit.org>
Fix Windows build.
* bindings/scripts/CodeGeneratorCOM.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34709
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Fri, 20 Jun 2008 22:59:15 +0000 (22:59 +0000)]
2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Gtk build fix: Add files missing in the previous fix (r34705)
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34708
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 20 Jun 2008 22:29:20 +0000 (22:29 +0000)]
Reviewed by Sam Weinig.
- fix leak of mask images
* rendering/RenderObject.cpp:
(WebCore::RenderObject::arenaDelete): Added a call to removeClient() on
the mask box image.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34707
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Fri, 20 Jun 2008 22:27:26 +0000 (22:27 +0000)]
2008-06-20 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Darin.
Extend the build-webkit (and set-webkit-configuration) script to
support Cairo-based webkit builds. (see http://bugs.webkit.org/show_bug.cgi?17952)
* Scripts/build-webkit: Add --cairo-win32 to the help message
* Scripts/webkitdirs.pm: Extend the 'determinePassedConfiguration
subroutine to recognize the --cairo-win32 flag. When present,
the build configuration is changed from Debug/Release to
Debug_Cairo/Release_Cairo. This flag is only active when the
isCygwin() test is true.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34706
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Fri, 20 Jun 2008 22:23:39 +0000 (22:23 +0000)]
2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Gtk build fix for r34702, r34700 and r34693
Qt build fix for r34700 and r34693
* GNUmakefile.am:
* WebCore.pro:
* platform/gtk/RenderThemeGtk.cpp:
* platform/gtk/RenderThemeGtk.h:
* platform/qt/RenderThemeQt.cpp:
* platform/qt/RenderThemeQt.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34705
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 20 Jun 2008 22:14:12 +0000 (22:14 +0000)]
!USE(MULTIPLE_THREADS) on Darwin build fix
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34704
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 20 Jun 2008 21:51:31 +0000 (21:51 +0000)]
2008-06-20 Kevin McCullough <kmccullough@apple.com>
-Leopard Build Fix.
* profiler/Profile.cpp:
(KJS::Profile::removeProfileStart):
(KJS::Profile::removeProfileEnd):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34703
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Fri, 20 Jun 2008 21:43:11 +0000 (21:43 +0000)]
2008-06-20 Sam Weinig <sam@webkit.org>
Reviewed by Adele Peterson.
Add 'files' property to the HTMLInputElement, which returns a FileList object
(when type=file, null otherwise) containing a list of all the files selected.
It currently always contains only 0 or 1 files as multifile input is not supported
yet. The list contains File objects which contains the name and size of the file.
The inspiration for these interfaces is from:
- http://developer.mozilla.org/en/docs/nsIDOMFileList
- http://developer.mozilla.org/en/docs/nsIDOMFile
Also fixes <rdar://problem/6022802>
* DerivedSources.make:
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* bindings/objc/DOMInternal.h:
* bindings/scripts/CodeGenerator.pm:
* bindings/scripts/IDLStructure.pm:
* html/File.cpp: Added.
(WebCore::File::File):
(WebCore::File::fileSize):
* html/File.h: Added.
(WebCore::File::create):
(WebCore::File::fileName):
(WebCore::File::path):
* html/File.idl: Added.
* html/FileList.cpp: Added.
(WebCore::FileList::FileList):
(WebCore::FileList::item):
* html/FileList.h: Added.
(WebCore::FileList::create):
(WebCore::FileList::length):
(WebCore::FileList::isEmpty):
(WebCore::FileList::clear):
(WebCore::FileList::append):
* html/FileList.idl: Added.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setInputType):
(WebCore::HTMLInputElement::appendFormData):
(WebCore::HTMLInputElement::value):
(WebCore::HTMLInputElement::setValue):
(WebCore::HTMLInputElement::setValueFromRenderer):
(WebCore::HTMLInputElement::files):
* html/HTMLInputElement.h:
* html/HTMLInputElement.idl:
* page/DOMWindow.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34702
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 20 Jun 2008 21:19:46 +0000 (21:19 +0000)]
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Make sure CSS variables work inside the inline style attribute.
Reviewed by Beth
Added fast/css/variables/inline-style-test.html
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::removeProperty):
(WebCore::CSSMutableStyleDeclaration::addParsedProperties):
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Make sure CSS variables work inside the inline style attribute.
Reviewed by Beth
* fast/css/variables/inline-style-test.html: Added.
* platform/mac/fast/css/variables/inline-style-test-expected.checksum: Added.
* platform/mac/fast/css/variables/inline-style-test-expected.png: Added.
* platform/mac/fast/css/variables/inline-style-test-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34701
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 20 Jun 2008 20:47:33 +0000 (20:47 +0000)]
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Add support for the CSSVariablesRule and CSSVariablesDeclaration DOM APIs. These allow querying of
variables names and values, as well as iteration, setting and removal.
Reviewed by Sam
Added multiple new tests to fast/css/variables/
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJS):
* bindings/objc/DOMInternal.h:
* bindings/scripts/CodeGeneratorJS.pm:
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::parserValue):
* css/CSSVariablesDeclaration.cpp:
(WebCore::CSSVariablesDeclaration::removeVariable):
(WebCore::CSSVariablesDeclaration::setVariable):
(WebCore::CSSVariablesDeclaration::setCssText):
(WebCore::CSSVariablesDeclaration::setChanged):
* css/CSSVariablesDeclaration.h:
* css/CSSVariablesDeclaration.idl: Added.
* css/CSSVariablesRule.h:
* css/CSSVariablesRule.idl: Added.
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Add tests of the DOM APIs for addition, removal and iteration.
Reviewed by Sam
* fast/css/variables/remove-variable-test.html: Added.
* fast/css/variables/set-variable-test.html: Added.
* fast/css/variables/variable-iteration-test.html: Added.
* platform/mac/fast/css/variables/remove-variable-test-expected.checksum: Added.
* platform/mac/fast/css/variables/remove-variable-test-expected.png: Added.
* platform/mac/fast/css/variables/remove-variable-test-expected.txt: Added.
* platform/mac/fast/css/variables/set-variable-test-expected.checksum: Added.
* platform/mac/fast/css/variables/set-variable-test-expected.png: Added.
* platform/mac/fast/css/variables/set-variable-test-expected.txt: Added.
* platform/mac/fast/css/variables/variable-iteration-test-expected.checksum: Added.
* platform/mac/fast/css/variables/variable-iteration-test-expected.png: Added.
* platform/mac/fast/css/variables/variable-iteration-test-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34700
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 20 Jun 2008 20:47:02 +0000 (20:47 +0000)]
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Just giving credit.
* ChangeLog:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34699
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 20 Jun 2008 19:47:27 +0000 (19:47 +0000)]
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/6024846> JSProfiler: ASSERT hit in Profiler.
- Because InspectorController can call startProfiling() and
stopProfiling() we cannot assert that console.profile() and
console.profileEnd() will be in the profile tree.
* profiler/Profile.cpp:
(KJS::Profile::removeProfileStart):
(KJS::Profile::removeProfileEnd):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34698
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 20 Jun 2008 19:38:15 +0000 (19:38 +0000)]
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Rubber stamped by Adele.
* manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34697
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 20 Jun 2008 19:36:10 +0000 (19:36 +0000)]
JavaScriptCore:
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)
- Now we profile one more stack frame up from the last frame to allocate
the time spent in it, if it exists.
* JavaScriptCore.exp:
* VM/Machine.cpp: We need to let the profiler know when the JS program
has finished since that is what will actually stop the profiler instead
of just calling stopProfiling().
(KJS::Machine::execute):
* profiler/Profile.cpp:
(KJS::Profile::create): Moved from Profile.h since it was getting pretty
long.
(KJS::Profile::Profile): We now have a client, which is a listener who
we will return this profile to, once it has actually finished.
(KJS::Profile::stopProfiling): Instead of fully stopping the profiler
here, we set the flag and keep it profiling in the background.
(KJS::Profile::didFinishAllExecution): This is where the profiler
actually finishes and creates the (idle) node if one should be made.
(KJS::Profile::removeProfileStart): Don't use m_currentNode since it is
needed by the profiler as it runs silently in the background.
(KJS::Profile::removeProfileEnd): Ditto.
(KJS::Profile::willExecute): Don't profile new functions if we have
stopped profiling.
(KJS::Profile::didExecute): Only record one more return as all the
remaining time will be attributed to that function.
(KJS::Profile::setupCurrentNodeAsStopped): Sets the current node's time.
* profiler/Profile.h: Added functions and variables for the above
changes.
(KJS::Profile::client):
* profiler/ProfileNode.h:
(KJS::CallIdentifier::toString): Debug method.
* profiler/Profiler.cpp: Added support for the ProfilerClient.
(KJS::Profiler::startProfiling):
(KJS::Profiler::stopProfiling): No longer return sthe profile.
(KJS::Profiler::didFinishAllExecution): Now returns the profile to the
client instead of stopProfiling.
* profiler/Profiler.h:
(KJS::ProfilerClient::~ProfilerClient): Clients will implement this
interface.
WebCore:
2008-06-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)
- Now we profile one more stack frame up from the last frame to allocate
the time spent in it, if it exists.
* page/Console.cpp:
* manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Added.
(WebCore::Console::profile): When stating the profiler give a client for
the callback of when the profile actually finishes.
(WebCore::Console::profileEnd): No longer needs to handle the return of
the profile object since it will be retruned in the client's callback.
(WebCore::Console::finishedProfiling): Implemenet the ProfileClient
callback method.
* page/Console.h: Inherit from the ProfileClient.
* page/InspectorController.cpp:
(WebCore::InspectorController::startUserInitiatedProfiling): Use the
client callback.
(WebCore::InspectorController::stopUserInitiatedProfiling): Does not
need to handle the profile being returned as it is now handled by the
client callback.
(WebCore::InspectorController::finishedProfiling): Implement the
ProfileClient callback method.
* page/InspectorController.h: Inherit from the ProfileClient.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34696
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Fri, 20 Jun 2008 19:26:52 +0000 (19:26 +0000)]
Makes the JavaScript syntax highlighter process lines in chunks
so the user interface isn't blocked for large script files.
https://bugs.webkit.org/show_bug.cgi?id=19677
Reviewed by Adam Roben.
* page/inspector/SourceFrame.js:
(WebInspector.SourceFrame.prototype._addMessageToSource): Use the cells
property on the row instead of getElementsByTagName.
(WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Use the
cells property on the row instead of getElementsByTagName. Added
a nested processChunk function that highlights 10 lines at a time
This processChunk function is called at an interval of 25ms. The
code is still highlighted quickly, and the user can't tell it wasn't
highlighted all at once.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34695
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Fri, 20 Jun 2008 19:26:42 +0000 (19:26 +0000)]
Fixes a bug where the source view in the Resources panel had a
couple of extra pixels at the bottom when fully scrolled.
Reviewed by Adam Roben.
* page/inspector/SourceFrame.js:
(WebInspector.SourceFrame.prototype.set autoSizesToFitContentHeight):
Call removeStyleClass instead of addStyleClass for "webkit-height-sized-to-fit"
when sizing to fit is being disabled.
* page/inspector/inspector.css:
(.resource-view.headers-visible .source-view-frame): Added the
vertical-align: top property to prevent line alignment from adding extra
pixels on the bottom.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34694
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Fri, 20 Jun 2008 19:26:31 +0000 (19:26 +0000)]
Fixes: Bug 19679: iframes with a height of 32,768px or greater do not layout correctly
WebCore:
2008-06-19 Timothy Hatcher <timothy@apple.com>
Changed all lineHeight, baselinePosition and verticalPositionHint
calls to return int instead of short. The short was overflowing
when a value greater than 32,767 was encountered.
Fixes: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679
Reviewed by Dave Hyatt.
Test: fast/css/line-height-overflow.html
* rendering/RenderBR.cpp:
(WebCore::RenderBR::baselinePosition):
* rendering/RenderBR.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::lineHeight):
* rendering/RenderBlock.h:
* rendering/RenderFlow.cpp:
* rendering/RenderFlow.h:
* rendering/RenderListBox.cpp:
* rendering/RenderListBox.h:
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::lineHeight):
* rendering/RenderListMarker.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::verticalPositionHint):
* rendering/RenderObject.h:
(WebCore::):
* rendering/RenderPath.cpp:
(WebCore::RenderPath::lineHeight):
* rendering/RenderPath.h:
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::lineHeight):
* rendering/RenderReplaced.h:
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::lineHeight):
* rendering/RenderSVGContainer.h:
* rendering/RenderSVGHiddenContainer.cpp:
(WebCore::RenderSVGHiddenContainer::lineHeight):
* rendering/RenderSVGHiddenContainer.h:
* rendering/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::lineHeight):
* rendering/RenderSVGRoot.h:
* rendering/RenderSlider.cpp:
* rendering/RenderSlider.h:
* rendering/RenderTableCell.cpp:
* rendering/RenderTableCell.h:
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.h:
* rendering/RenderText.cpp:
* rendering/RenderText.h:
* rendering/RenderTextControl.cpp:
* rendering/RenderTextControl.h:
* rendering/RenderTheme.cpp:
* rendering/RenderTheme.h:
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
* rendering/RenderThemeSafari.cpp:
* rendering/RenderThemeSafari.h:
LayoutTests:
2008-06-19 Timothy Hatcher <timothy@apple.com>
Test for: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679
Reviewed by Dave Hyatt.
* fast/css/line-height-overflow.html: Added.
* platform/mac/fast/css/line-height-overflow-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34693
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 20 Jun 2008 19:19:18 +0000 (19:19 +0000)]
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19519
<rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
Test: fast/table/prepend-in-anonymous-table.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addChildToFlow): Added code to handle the case
of inserting before a child that has been wrapped by an anonymous table,
in which case if the new child is the type that needs to be in a table,
it is inserted into the table, and otherwise it is inserted before the
table.
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild): Added table-column-group alongside
table-caption as content that can exist inside an anonymous table
without being wrapped in a table section.
LayoutTests:
Reviewed by Darin Adler.
- test for https://bugs.webkit.org/show_bug.cgi?id=19519
<rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
* fast/table/prepend-in-anonymous-table.html: Added.
* platform/mac/fast/table/prepend-in-anonymous-table-expected.checksum: Added.
* platform/mac/fast/table/prepend-in-anonymous-table-expected.png: Added.
* platform/mac/fast/table/prepend-in-anonymous-table-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34692
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 20 Jun 2008 18:36:19 +0000 (18:36 +0000)]
WebCore:
2008-06-20 David Hyatt <hyatt@apple.com>
Allow CSS variables to support arbitrary expressions as values instead of just a single term.
Reviewed by Sam
Removed fast/css/variables/single-term-test.html and replaced with multiple-term-test.html
* css/CSSGrammar.y:
* css/CSSParser.cpp:
(WebCore::CSSParser::addVariable):
* css/CSSParser.h:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::addMatchedDeclaration):
* css/CSSVariablesDeclaration.cpp:
(WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
(WebCore::CSSVariablesDeclaration::getVariableValue):
(WebCore::CSSVariablesDeclaration::addParsedVariable):
(WebCore::CSSVariablesDeclaration::getParsedVariable):
* css/CSSVariablesDeclaration.h:
(WebCore::CSSVariablesDeclaration::create):
LayoutTests:
2008-06-20 David Hyatt <hyatt@apple.com>
Allow CSS variables to support arbitrary expressions as values instead of just a single term.
Reviewed by Sam
* fast/css/variables/single-term-test.html: Removed.
* fast/css/variables/multiple-term-test.html: Added.
* platform/mac/fast/css/variables/multiple-term-test-expected.checksum: Added.
* platform/mac/fast/css/variables/multiple-term-test-expected.png: Added.
* platform/mac/fast/css/variables/multiple-term-test-expected.txt: Added.
* platform/mac/fast/css/variables/single-term-test-expected.checksum: Removed.
* platform/mac/fast/css/variables/single-term-test-expected.png: Removed.
* platform/mac/fast/css/variables/single-term-test-expected.txt: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34691
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 20 Jun 2008 17:17:06 +0000 (17:17 +0000)]
2008-06-20 Darin Adler <darin@apple.com>
- updated results for some recent changes
* fast/dom/Window/window-properties-expected.txt: Updated results to reflect the
new rule type, VARIABLES_RULE (Hyatt's CSS variables patch).
* fast/forms/plaintext-mode-1-expected.txt: Updated test and results to expect
ForeColor to be disabled when the region is plain-text-only. Justin's execCommand
patch for https://bugs.webkit.org/show_bug.cgi?id=16049.
* fast/forms/plaintext-mode-1.html: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34690
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 20 Jun 2008 15:22:15 +0000 (15:22 +0000)]
2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Surpress compiler warning (int vs unsigned comparison).
* wtf/unicode/qt4/UnicodeQt4.h:
(WTF::Unicode::toLower):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34689
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 20 Jun 2008 10:03:44 +0000 (10:03 +0000)]
2008-06-20 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34688
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 20 Jun 2008 10:03:30 +0000 (10:03 +0000)]
2008-06-20 Marco Barisione <marco.barisione@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34687
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 20 Jun 2008 09:06:11 +0000 (09:06 +0000)]
2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Timothy Hatcher.
Introduce compiler define for MinGW, to have COMPILER(MINGW).
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34686
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 20 Jun 2008 05:43:16 +0000 (05:43 +0000)]
Reviewed by Sam Weinig.
- two more updated results for the last patch
* platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
* platform/mac/fast/invalid/020-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34685
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Fri, 20 Jun 2008 03:30:09 +0000 (03:30 +0000)]
Reviewed by Geoff.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34684
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 20 Jun 2008 02:53:12 +0000 (02:53 +0000)]
WebCore:
Reviewed by John Sullivan.
- fix a bug where anonymous tables were inserted in the wrong place
Tests: tables/mozilla/bugs/bug2479-2.html
tables/mozilla/bugs/bug278266.html
tables/mozilla/bugs/bug8411.xml
* rendering/RenderContainer.cpp:
(WebCore::RenderContainer::addChild): Changed to create an anonymous
table and insert it before beforeChild unless the insertion point is
right after an existing anonymous table, in which case the existing
table is used.
LayoutTests:
Reviewed by John Sullivan.
- updated tests and results after fixing a bug where anonymous tables were inserted in the wrong place
* fast/forms/form-hides-table.html: Wrapped every case in a block in
order to prevent cross-talk.
* platform/mac/fast/forms/form-hides-table-expected.checksum:
* platform/mac/fast/forms/form-hides-table-expected.png:
* platform/mac/fast/forms/form-hides-table-expected.txt:
* platform/mac/tables/mozilla/bugs/bug2479-2-expected.checksum: Added.
* platform/mac/tables/mozilla/bugs/bug2479-2-expected.png: Added.
* platform/mac/tables/mozilla/bugs/bug2479-2-expected.txt: Added.
* platform/mac/tables/mozilla/bugs/bug2479-4-expected.txt:
* platform/mac/tables/mozilla/bugs/bug278266-expected.checksum: Added.
* platform/mac/tables/mozilla/bugs/bug278266-expected.png: Added.
* platform/mac/tables/mozilla/bugs/bug278266-expected.txt: Added.
* platform/mac/tables/mozilla/bugs/bug8411-expected.checksum: Added.
* platform/mac/tables/mozilla/bugs/bug8411-expected.png: Added.
* platform/mac/tables/mozilla/bugs/bug8411-expected.txt: Added.
* platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.checksum: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.png: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.txt: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.checksum: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.png: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.txt: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.checksum: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.png: Removed.
* platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.txt: Removed.
* platform/mac/tables/mozilla_expected_failures/other/test4-expected.txt:
* tables/mozilla/bugs/bug2479-2.html: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug2479-2.html.
* tables/mozilla/bugs/bug278266.html: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug278266.html.
* tables/mozilla/bugs/bug8411.xml: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug8411.xml.
* tables/mozilla_expected_failures/bugs/bug2479-2.html: Removed.
* tables/mozilla_expected_failures/bugs/bug278266.html: Removed.
* tables/mozilla_expected_failures/bugs/bug8411.xml: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34683
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justin.garcia@apple.com [Fri, 20 Jun 2008 01:19:23 +0000 (01:19 +0000)]
WebCore:
2008-06-19 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver.
<https://bugs.webkit.org/show_bug.cgi?id=16049>
execCommand('backColor') fails on collapsed selections
* editing/EditorCommand.cpp:
(WebCore::CommandEntry::): Enable BackColor for caret selections, and
disable ForeColor in plaintext-only regions.
LayoutTests:
2008-06-19 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver.
<https://bugs.webkit.org/show_bug.cgi?id=16049>
execCommand('backColor') fails on collapsed selections
* editing/execCommand/16049-expected.txt: Added.
* editing/execCommand/16049.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34682
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justin.garcia@apple.com [Fri, 20 Jun 2008 00:24:13 +0000 (00:24 +0000)]
WebCore:
2008-06-19 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<https://bugs.webkit.org/show_bug.cgi?id=19653>
Typing style lost when creating list from, indenting or outdenting an empty paragraph
There were two problems. First, moveParagraphs didn't preserve the style of empty paragraphs.
Second, indent, outdent and list creation returned false from preservesTypingStyle.
The second problem couldn't be fixed by just adding preservesTypingStyle() { return true; }
to those commands, though, because of other bugs.
Cleaned up the implementation of typing style enough to remove FIXMEs for:
<rdar://problem/3769899> Implementation of typing style needs improvement
which has actually been closed for some time now anyway.
* dom/Document.cpp: Removed an unused header.
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::moveParagraphs): Preserve the style of an empty paragraph, too.
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::saveTypingStyleState): Removed FIXME.
(WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
Removed FIXME.
If there is a typing style to apply after a delete, apply it to any line break that acts as a paragraph
placeholder, not only one that was inserted by deletion. This fixes a bug where deleting
<div><b>Bold</b><br></div>, changing the selection and then coming back and typing wouldn't
produce bold text.
Don't set the EditCommand's typingStyle, it has been removed (more on that later).
(WebCore::DeleteSelectionCommand::doApply): We don't need to pass calculateTypingStyleAfterDelete
the inserted placeholder because it will find it.
(WebCore::DeleteSelectionCommand::preservesTypingStyle): Normally deletion doesn't preserve the
typing style that was present before it. For example, type a character, Bold, then delete the
character and start typing. The Bold typing style shouldn't stick around. We got this right before
purely by chance. Deletion should preserve a typing style that *it* sets, however.
* editing/DeleteSelectionCommand.h: No longer need to pass calculateTypingStyleAfterDelete
the inserted placeholder.
* editing/EditCommand.cpp:
(WebCore::EditCommand::apply):
Clearing or not clearing a removed anchor should not be determined by whether or not a command
preservesTypingStyle(). For example, the deletion that removed an anchor (and stored it), may
not preserve the typing style, but that doesn't mean that it should then go and clear the removed
anchor. All high level commands, and all commands that a TypingCommand spawns, except for
text insertions, which should restore a removed anchor, should clear it.
There is no longer a typing style on EditCommand, removed code that cleared it. Code that clears the
*actual* typing style is now in Editor::appliedEditing, just like before.
There is no longer a typing style on EditCommand, removed code to set one.
(WebCore::EditCommand::styleAtPosition): Removed FIXME.
* editing/EditCommand.h:
Removed code assosiated with m_typingStyle.
Made preservesTypingStyle() public, so that we can call it from Editor::appliedEditing().
* editing/Editor.cpp:
(WebCore::Editor::appliedEditing):
Removed code to preserve the removedAnchor during the call to setSelection, because we no longer
request to clear the typing style with that call. Also removed the FIXME about this.
Before, a command would set the Frame's typing style by setting its own typingStyle, and then
letting code here, in appliedEditing pick that up and set it on the Frame. Now, the command
itself sets the Frame's typing style. Deletion is the only command that does this right now.
* editing/IndentOutdentCommand.h:
(WebCore::IndentOutdentCommand::preservesTypingStyle): Added, returns true.
* editing/InsertLineBreakCommand.cpp:
(WebCore::InsertLineBreakCommand::doApply): Removed FIXME.
* editing/InsertListCommand.h:
(WebCore::InsertListCommand::preservesTypingStyle): Added.
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Removed FIXME.
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::input): Removed FIXME.
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply): Removed FIXME and also added one about clearing
the typing style here. It seems like it's something that could wait until after the command
has been performed, since there is no code between this point and the end of the operation
that queries or uses the typing style.
LayoutTests:
2008-06-19 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
https://bugs.webkit.org/show_bug.cgi?id=19653
Typing style lost when creating list from, indenting or outdenting an empty paragraph
These demonstrate fixes:
* editing/execCommand/19653-1-expected.txt: Added.
* editing/execCommand/19653-1.html: Added.
* editing/execCommand/19653-2-expected.txt: Added.
* editing/execCommand/19653-2.html: Added.
* editing/execCommand/19653-3-expected.txt: Added.
* editing/execCommand/19653-3.html: Added.
* editing/execCommand/19653-4-expected.txt: Added.
* editing/execCommand/19653-4.html: Added.
Changed to an equivalent but more bloated DOM because of a pre-existing bug in ApplyStyleCommand:
* platform/mac/editing/deleting/delete-br-011-expected.txt:
Fixed a bug where the typing style wasn't applied to the placeholder in an empty paragraph,
so typing would create text with the right style, but if you were to change the selection
and then come back and start typing, the style would be wrong. The size of the caret was
also wrong as a result:
* platform/mac/editing/deleting/delete-br-012-expected.txt:
* platform/mac/editing/deleting/delete-br-012-expected.png:
* platform/mac/editing/deleting/delete-br-012-expected.checksum:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34681
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Fri, 20 Jun 2008 00:09:19 +0000 (00:09 +0000)]
2008-06-19 Dan Bernstein <mitz@apple.com>
Reviewed by Alexey Proskuryakov.
- fix crash in CSSStyleDeclaration::copyPropertiesInSet()
Covered by many editing tests
* css/CSSStyleDeclaration.cpp:
(WebCore::CSSStyleDeclaration::copyPropertiesInSet): Re-ordered to avoid
null pointer deref.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34680
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 20 Jun 2008 00:06:28 +0000 (00:06 +0000)]
2008-06-19 David Hyatt <hyatt@apple.com>
Fix out of bounds bug in CSSVariablesDeclaration's item() method.
Reviewed by Sam, Darin
* css/CSSVariablesDeclaration.cpp:
(WebCore::CSSVariablesDeclaration::item):
* css/CSSVariablesDeclaration.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34679
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan@apple.com [Thu, 19 Jun 2008 23:42:26 +0000 (23:42 +0000)]
2008-06-19 John Sullivan <sullivan@apple.com>
Reviewed by Darin
Tweak to previous checkin
* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):
clear m_firstLayoutCallbackPending before performing callback, to avoid recursion
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34678
268f45cc-cd09-0410-ab3c-
d52691b4dbfc