mjs@apple.com [Wed, 8 Oct 2008 20:30:04 +0000 (20:30 +0000)]
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Not reviewed, trying to fix bot.
Update -0 expectations better.
* fast/xpath/4XPath/Core/test_numeric_expr-expected.txt:
* fast/xpath/4XPath/Core/test_numeric_expr.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 8 Oct 2008 17:50:42 +0000 (17:50 +0000)]
Roll out r37427 because it causes an infinite recursion loading about:blank.
https://bugs.webkit.org/show_bug.cgi?id=21476
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37428
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Wed, 8 Oct 2008 17:03:10 +0000 (17:03 +0000)]
JavaScriptCore:
2008-10-08 Darin Adler <darin@apple.com>
Reviewed by Cameron Zwarich.
- https://bugs.webkit.org/show_bug.cgi?id=21403
Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
Add CallFrame as a synonym for ExecState. Arguably, some day we should switch every
client over to the new name.
Use CallFrame* consistently rather than Register* or ExecState* in low-level code such
as Machine.cpp and CTI.cpp. Similarly, use callFrame rather than r as its name and use
accessor functions to get at things in the frame.
Eliminate other uses of ExecState* that aren't needed, replacing in some cases with
JSGlobalData* and in other cases eliminating them entirely.
* API/JSObjectRef.cpp:
(JSObjectMakeFunctionWithCallback):
(JSObjectMakeFunction):
(JSObjectHasProperty):
(JSObjectGetProperty):
(JSObjectSetProperty):
(JSObjectDeleteProperty):
* API/OpaqueJSString.cpp:
* API/OpaqueJSString.h:
* VM/CTI.cpp:
(JSC::CTI::getConstant):
(JSC::CTI::emitGetArg):
(JSC::CTI::emitGetPutArg):
(JSC::CTI::getConstantImmediateNumericArg):
(JSC::CTI::printOpcodeOperandTypes):
(JSC::CTI::CTI):
(JSC::CTI::compileOpCall):
(JSC::CTI::compileBinaryArithOp):
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompile):
(JSC::CTI::privateCompileGetByIdProto):
(JSC::CTI::privateCompileGetByIdChain):
(JSC::CTI::compileRegExp):
* VM/CTI.h:
* VM/CodeBlock.h:
* VM/CodeGenerator.cpp:
(JSC::CodeGenerator::emitEqualityOp):
(JSC::CodeGenerator::emitLoad):
(JSC::CodeGenerator::emitUnexpectedLoad):
(JSC::CodeGenerator::emitConstruct):
* VM/CodeGenerator.h:
* VM/Machine.cpp:
(JSC::jsLess):
(JSC::jsLessEq):
(JSC::jsAddSlowCase):
(JSC::jsAdd):
(JSC::jsTypeStringForValue):
(JSC::Machine::resolve):
(JSC::Machine::resolveSkip):
(JSC::Machine::resolveGlobal):
(JSC::inlineResolveBase):
(JSC::Machine::resolveBase):
(JSC::Machine::resolveBaseAndProperty):
(JSC::Machine::resolveBaseAndFunc):
(JSC::Machine::slideRegisterWindowForCall):
(JSC::isNotObject):
(JSC::Machine::callEval):
(JSC::Machine::dumpCallFrame):
(JSC::Machine::dumpRegisters):
(JSC::Machine::unwindCallFrame):
(JSC::Machine::throwException):
(JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
(JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
(JSC::Machine::execute):
(JSC::Machine::debug):
(JSC::Machine::createExceptionScope):
(JSC::cachePrototypeChain):
(JSC::Machine::tryCachePutByID):
(JSC::Machine::tryCacheGetByID):
(JSC::Machine::privateExecute):
(JSC::Machine::retrieveArguments):
(JSC::Machine::retrieveCaller):
(JSC::Machine::retrieveLastCaller):
(JSC::Machine::findFunctionCallFrame):
(JSC::Machine::getArgumentsData):
(JSC::Machine::tryCTICachePutByID):
(JSC::Machine::getCTIArrayLengthTrampoline):
(JSC::Machine::getCTIStringLengthTrampoline):
(JSC::Machine::tryCTICacheGetByID):
(JSC::Machine::cti_op_convert_this):
(JSC::Machine::cti_op_end):
(JSC::Machine::cti_op_add):
(JSC::Machine::cti_op_pre_inc):
(JSC::Machine::cti_timeout_check):
(JSC::Machine::cti_op_loop_if_less):
(JSC::Machine::cti_op_loop_if_lesseq):
(JSC::Machine::cti_op_new_object):
(JSC::Machine::cti_op_put_by_id):
(JSC::Machine::cti_op_put_by_id_second):
(JSC::Machine::cti_op_put_by_id_generic):
(JSC::Machine::cti_op_put_by_id_fail):
(JSC::Machine::cti_op_get_by_id):
(JSC::Machine::cti_op_get_by_id_second):
(JSC::Machine::cti_op_get_by_id_generic):
(JSC::Machine::cti_op_get_by_id_fail):
(JSC::Machine::cti_op_instanceof):
(JSC::Machine::cti_op_del_by_id):
(JSC::Machine::cti_op_mul):
(JSC::Machine::cti_op_new_func):
(JSC::Machine::cti_op_call_JSFunction):
(JSC::Machine::cti_vm_compile):
(JSC::Machine::cti_op_push_activation):
(JSC::Machine::cti_op_call_NotJSFunction):
(JSC::Machine::cti_op_create_arguments):
(JSC::Machine::cti_op_tear_off_activation):
(JSC::Machine::cti_op_tear_off_arguments):
(JSC::Machine::cti_op_ret_profiler):
(JSC::Machine::cti_op_ret_scopeChain):
(JSC::Machine::cti_op_new_array):
(JSC::Machine::cti_op_resolve):
(JSC::Machine::cti_op_construct_JSConstruct):
(JSC::Machine::cti_op_construct_NotJSConstruct):
(JSC::Machine::cti_op_get_by_val):
(JSC::Machine::cti_op_resolve_func):
(JSC::Machine::cti_op_sub):
(JSC::Machine::cti_op_put_by_val):
(JSC::Machine::cti_op_put_by_val_array):
(JSC::Machine::cti_op_lesseq):
(JSC::Machine::cti_op_loop_if_true):
(JSC::Machine::cti_op_negate):
(JSC::Machine::cti_op_resolve_base):
(JSC::Machine::cti_op_resolve_skip):
(JSC::Machine::cti_op_resolve_global):
(JSC::Machine::cti_op_div):
(JSC::Machine::cti_op_pre_dec):
(JSC::Machine::cti_op_jless):
(JSC::Machine::cti_op_not):
(JSC::Machine::cti_op_jtrue):
(JSC::Machine::cti_op_post_inc):
(JSC::Machine::cti_op_eq):
(JSC::Machine::cti_op_lshift):
(JSC::Machine::cti_op_bitand):
(JSC::Machine::cti_op_rshift):
(JSC::Machine::cti_op_bitnot):
(JSC::Machine::cti_op_resolve_with_base):
(JSC::Machine::cti_op_new_func_exp):
(JSC::Machine::cti_op_mod):
(JSC::Machine::cti_op_less):
(JSC::Machine::cti_op_neq):
(JSC::Machine::cti_op_post_dec):
(JSC::Machine::cti_op_urshift):
(JSC::Machine::cti_op_bitxor):
(JSC::Machine::cti_op_new_regexp):
(JSC::Machine::cti_op_bitor):
(JSC::Machine::cti_op_call_eval):
(JSC::Machine::cti_op_throw):
(JSC::Machine::cti_op_get_pnames):
(JSC::Machine::cti_op_next_pname):
(JSC::Machine::cti_op_push_scope):
(JSC::Machine::cti_op_pop_scope):
(JSC::Machine::cti_op_typeof):
(JSC::Machine::cti_op_to_jsnumber):
(JSC::Machine::cti_op_in):
(JSC::Machine::cti_op_push_new_scope):
(JSC::Machine::cti_op_jmp_scopes):
(JSC::Machine::cti_op_put_by_index):
(JSC::Machine::cti_op_switch_imm):
(JSC::Machine::cti_op_switch_char):
(JSC::Machine::cti_op_switch_string):
(JSC::Machine::cti_op_del_by_val):
(JSC::Machine::cti_op_put_getter):
(JSC::Machine::cti_op_put_setter):
(JSC::Machine::cti_op_new_error):
(JSC::Machine::cti_op_debug):
(JSC::Machine::cti_vm_throw):
* VM/Machine.h:
* VM/Register.h:
* VM/RegisterFile.h:
* kjs/Arguments.h:
* kjs/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::functionName):
(JSC::DebuggerCallFrame::type):
(JSC::DebuggerCallFrame::thisObject):
(JSC::DebuggerCallFrame::evaluate):
* kjs/DebuggerCallFrame.h:
* kjs/ExecState.cpp:
(JSC::CallFrame::thisValue):
* kjs/ExecState.h:
* kjs/FunctionConstructor.cpp:
(JSC::constructFunction):
* kjs/JSActivation.cpp:
(JSC::JSActivation::JSActivation):
(JSC::JSActivation::argumentsGetter):
* kjs/JSActivation.h:
* kjs/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
* kjs/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncEval):
* kjs/JSVariableObject.h:
* kjs/Parser.cpp:
(JSC::Parser::parse):
* kjs/RegExpConstructor.cpp:
(JSC::constructRegExp):
* kjs/RegExpPrototype.cpp:
(JSC::regExpProtoFuncCompile):
* kjs/Shell.cpp:
(prettyPrintScript):
* kjs/StringPrototype.cpp:
(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch):
* kjs/identifier.cpp:
(JSC::Identifier::checkSameIdentifierTable):
* kjs/interpreter.cpp:
(JSC::Interpreter::checkSyntax):
(JSC::Interpreter::evaluate):
* kjs/nodes.cpp:
(JSC::ThrowableExpressionData::emitThrowError):
(JSC::RegExpNode::emitCode):
(JSC::ArrayNode::emitCode):
(JSC::InstanceOfNode::emitCode):
* kjs/nodes.h:
* kjs/regexp.cpp:
(JSC::RegExp::RegExp):
(JSC::RegExp::create):
* kjs/regexp.h:
* profiler/HeavyProfile.h:
* profiler/Profile.h:
* wrec/WREC.cpp:
* wrec/WREC.h:
WebKit/mac:
2008-10-08 Darin Adler <darin@apple.com>
Reviewed by Cameron Zwarich.
- https://bugs.webkit.org/show_bug.cgi?id=21403
Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 8 Oct 2008 16:41:15 +0000 (16:41 +0000)]
Make the toolbar label text-shadow not disappear when clicking on the
search result count or around the search field.
Reviewed by Timothy Hatcher.
* inspector/front-end/inspector.css:
(.toolbar-item:active .toolbar-label): Make this rule also require the
toggleable class with the toolbar-item class.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37426
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 13:30:07 +0000 (13:30 +0000)]
2008-10-08 Matthias Ettrich <ettrich@nokia.com>
Reviewed by Simon.
Make QWebView ignore focus changes with PopupFocusReason to avoid
massive updates when menus open and close.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 13:13:24 +0000 (13:13 +0000)]
2008-10-08 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Updated the qrc file for the Web Inspector to contain the current set
of images.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37424
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 12:43:13 +0000 (12:43 +0000)]
2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
Reviewed by Simon.
Fix the linking of applications against WebKit on Qt/Windows.
The prl files that qmake creates are buggy on Unix, but we they're
fine on Windows and we have to have them there in order to get the
dependencies correct.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 12:20:41 +0000 (12:20 +0000)]
2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
Reviewed by Oliver Hunt.
Avoid endless loops when compiling without the computed goto
optimization.
NEXT_OPCODE expands to "continue", which will not work inside
loops.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 12:11:44 +0000 (12:11 +0000)]
2008-10-08 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Speed up rectangle filling by not re-creating a QBrush all the time.
This triggers faster path in QPainter where the brush is reused.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37421
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 12:08:47 +0000 (12:08 +0000)]
2008-10-08 Kavindra Palaraja <kdpalara@trolltech.com>
Reviewed by Simon.
Fixed a qdoc warning and adjusted some spacing
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37420
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 11:33:16 +0000 (11:33 +0000)]
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- update for new -0 handling in shouldBe
(I confirmed the correctness of this change against other browsers, too.)
* fast/xpath/4XPath/Core/test_numeric_expr.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37419
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 8 Oct 2008 11:01:37 +0000 (11:01 +0000)]
2008-10-08 Dean Jackson <dino@apple.com>
Forgot to set the date on the spec documents with last commit.
* CSSAnimations.html:
* CSSTransforms.html:
* CSSTransitions.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 10:53:13 +0000 (10:53 +0000)]
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
Re-landing the following fix with the crashing bug in it fixed (r37405):
- optimize away multiplication by constant 1.0
2.3% speedup on v8 RayTrace benchmark
Apparently it's not uncommon for JavaScript code to multiply by
constant 1.0 in the mistaken belief that this converts integer to
floating point and that there is any operational difference.
* VM/CTI.cpp:
(JSC::CTI::privateCompileMainPass): Optimize to_jsnumber for
case where parameter is already number.
(JSC::CTI::privateCompileSlowCases): ditto
* VM/Machine.cpp:
(JSC::Machine::privateExecute): ditto
* kjs/grammar.y:
(makeMultNode): Transform as follows:
+FOO * BAR ==> FOO * BAR
FOO * +BAR ==> FOO * BAR
FOO * 1 ==> +FOO
1 * FOO ==> +FOO
(makeDivNode): Transform as follows:
+FOO / BAR ==> FOO / BAR
FOO / +BAR ==> FOO / BAR
(makeSubNode): Transform as follows:
+FOO - BAR ==> FOO - BAR
FOO - +BAR ==> FOO - BAR
* kjs/nodes.h:
(JSC::ExpressionNode::stripUnaryPlus): Helper for above
grammar.y changes
(JSC::UnaryPlusNode::stripUnaryPlus): ditto
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 10:27:08 +0000 (10:27 +0000)]
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- update regression testing system to be able to tell 0 from -0
* fast/js/resources/js-test-pre.js:
Update tests and results appropriately.
* fast/js/resources/constant-folding.js:
* fast/js/constant-folding-expected.txt:
* fast/js/math-transforms-expected.txt:
* fast/js/resources/math-transforms.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 09:18:08 +0000 (09:18 +0000)]
JavaScriptCore:
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- correctly handle appending -0 to a string, it should stringify as just 0
* kjs/ustring.cpp:
(JSC::concatenate):
LayoutTests:
2008-10-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- added test case for: correctly handle appending -0 to a string, it should stringify as just 0
(added to existing test)
* fast/js/number-toString-expected.txt:
* fast/js/resources/number-toString.js:
- updated results in light of above fix
* fast/js/math-transforms-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:10:44 +0000 (09:10 +0000)]
2008-10-08 Thiago Macieira <thiago.macieira@nokia.com>
Reviewed by Simon.
Fixes: Encoding of Qt URLs
This encoding was added by Simon and I because QUrl's
tolerant parser wasn't tolerant enough. Now it is, so we don't need
this anymore.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:10:32 +0000 (09:10 +0000)]
2008-10-08 Marius Storm-Olsen <marius@trolltech.com>
Reviewed by Simon.
Fixes dependencies in qmake generated visual studio projects.
Only add debug lib name if we're in the debug build_pass, else the release version.
The MSVC solution generator would pick up the debug javascriptcore lib as a dependency.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:10:23 +0000 (09:10 +0000)]
2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
Reviewed by Simon.
Fix WebKit compilation with VC2008SP1
Apply the TR1 workaround for JavaScriptCore, too.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:10:14 +0000 (09:10 +0000)]
2008-10-08 Rhys Weatherley <rhys.weatherley@nokia.com>
Reviewed by Simon.
Compile for platforms without context menus.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:10:04 +0000 (09:10 +0000)]
2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
Reviewed by Simon.
Fix compilation errors on VS2008 64Bit
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 8 Oct 2008 09:09:42 +0000 (09:09 +0000)]
2008-10-08 André Pönitz <apoenitz@trolltech.com>
Reviewed by Simon.
Fix compilation with Qt namespaces.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Wed, 8 Oct 2008 06:36:41 +0000 (06:36 +0000)]
2008-10-07 Sam Weinig <sam@webkit.org>
Roll out r37405.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Wed, 8 Oct 2008 04:56:38 +0000 (04:56 +0000)]
Switch CTI runtime calls to the fastcall calling convention
Reviewed by Cameron Zwarich
Basically this means that we get to store the argument for CTI
calls in the ECX register, which saves a register->memory write
and subsequent memory->register read.
This is a 1.7% progression in SunSpider and 2.4% on commandline
v8 tests on Windows
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 03:46:34 +0000 (03:46 +0000)]
2008-10-07 Maciej Stachowiak <mjs@apple.com>
Reviewed by Mark Rowe.
- optimize away multiplication by constant 1.0
2.3% speedup on v8 RayTrace benchmark
Apparently it's not uncommon for JavaScript code to multiply by
constant 1.0 in the mistaken belief that this converts integer to
floating point and that there is any operational difference.
* VM/CTI.cpp:
(JSC::CTI::privateCompileMainPass): Optimize to_jsnumber for
case where parameter is already number.
(JSC::CTI::privateCompileSlowCases): ditto
* VM/Machine.cpp:
(JSC::Machine::privateExecute): ditto
* kjs/grammar.y:
(makeMultNode): Transform as follows:
+FOO * BAR ==> FOO * BAR
FOO * +BAR ==> FOO * BAR
FOO * 1 ==> +FOO
1 * FOO ==> +FOO
(makeDivNode): Transform as follows:
+FOO / BAR ==> FOO / BAR
FOO / +BAR ==> FOO / BAR
(makeSubNode): Transform as follows:
+FOO - BAR ==> FOO - BAR
FOO - +BAR ==> FOO - BAR
* kjs/nodes.h:
(JSC::ExpressionNode::stripUnaryPlus): Helper for above
grammar.y changes
(JSC::UnaryPlusNode::stripUnaryPlus): ditto
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 03:46:04 +0000 (03:46 +0000)]
2008-10-07 Maciej Stachowiak <mjs@apple.com>
Reviewed by Mark Rowe.
- test cases that will check some possible edge cases for math optimizations
* fast/js/math-transforms-expected.txt: Added.
* fast/js/math-transforms.html: Added.
* fast/js/resources/math-transforms.js: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Wed, 8 Oct 2008 00:42:37 +0000 (00:42 +0000)]
2008-10-07 Alp Toker <alp@nuanti.com>
GTK+ build fix for older automake versions (1.7). Discussed in bug
#21392.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 8 Oct 2008 00:15:20 +0000 (00:15 +0000)]
2008-10-07 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- make constant folding code more consistent
Added a makeSubNode to match add, mult and div; use the makeFooNode functions always,
instead of allocating nodes directly in other places in the grammar.
* kjs/grammar.y:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 8 Oct 2008 00:12:08 +0000 (00:12 +0000)]
Roll out r37391 as it appears to have broken 40+ regression tests.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 7 Oct 2008 23:49:59 +0000 (23:49 +0000)]
2008-10-07 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich.
Move hasGetterSetterProperties flag from PropertyMap to StructureID.
* kjs/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::defineGetter):
(JSC::JSObject::defineSetter):
* kjs/JSObject.h:
(JSC::JSObject::hasGetterSetterProperties):
(JSC::JSObject::getOwnPropertySlotForWrite):
(JSC::JSObject::getOwnPropertySlot):
* kjs/PropertyMap.h:
* kjs/StructureID.cpp:
(JSC::StructureID::StructureID):
(JSC::StructureID::addPropertyTransition):
(JSC::StructureID::toDictionaryTransition):
(JSC::StructureID::changePrototypeTransition):
(JSC::StructureID::getterSetterTransition):
* kjs/StructureID.h:
(JSC::StructureID::hasGetterSetterProperties):
(JSC::StructureID::setHasGetterSetterProperties):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2008 23:31:34 +0000 (23:31 +0000)]
2008-10-07 Anders Carlsson <andersca@apple.com>
Reviewed by Antti Koivisto.
<rdar://problem/
6273887> Crash in ApplicationCacheGroup
Make sure to stop loading even before a cache update is in progress so that the
manifest load will be stopped.
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
(WebCore::ApplicationCacheGroup::stopLoading):
(WebCore::ApplicationCacheGroup::cacheUpdateFailed):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37399
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 7 Oct 2008 22:09:42 +0000 (22:09 +0000)]
Fix the build due to a bad patch apply.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 7 Oct 2008 22:08:02 +0000 (22:08 +0000)]
Fix the build due to a bad patch apply.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 7 Oct 2008 21:49:55 +0000 (21:49 +0000)]
Auto-generate DOMDocument's createNodeIterator: and createTreeWalker: methods.
https://bugs.webkit.org/show_bug.cgi?id=21433
Reviewed by Sam Weinig.
* WebCore.xcodeproj/project.pbxproj: Add ObjCNodeFilterCondition.{mm,h}.
* bindings/objc/DOM.mm: Remove previous category implementations
on DOMDocument for createNodeIterator: and createTreeWalker:. Also
moves ObjCNodeFilterCondition to its own file.
* bindings/objc/DOMTraversal.h: Remove the category methods that added
createNodeIterator: and createTreeWalker: to DOMDocument. This is fine
to do since DOmDocument.h is included still, and has these methods.
* bindings/objc/DOMUtility.mm:
(JSC::createDOMWrapper): Remove special case for JSNodeIterator and
JSTreeWalker now that the ObjC binding conforms to the standard wrap.
* bindings/objc/ObjCNodeFilterCondition.h: Split out from DOM.mm.
(WebCore::ObjCNodeFilterCondition::create): Moved from DOM.mm.
(WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition): Ditto.
* bindings/objc/ObjCNodeFilterCondition.mm: Split out from DOM.mm.
(WebCore::ObjCNodeFilterCondition::acceptNode): Moved from DOM.mm.
* bindings/objc/PublicDOMInterfaces.h: Add the createNodeIterator: and
createTreeWalker: methods to DOMDocument.
* bindings/scripts/CodeGeneratorObjC.pm:
(GetObjCTypeGetter): Add a case for NodeFilter.
(AddIncludesForType): Include ObjCNodeFilterCondition.h for NodeFilter.
(GenerateImplementation): Remove existing NodeFilter special case that
used the m_filter member variable. Add a new special getter for protocol
types that aren't EventTarget, so the right class is used for NodeFilter.
Add a special case for NodeFilter where it creates an ObjCNodeFilterCondition.
* dom/Document.idl: Remove the #ifdef LANGUAGE_OBJECTIVE_C. Add the
OldStyleObjC extended attribute to createNodeIterator and createTreeWalker.
Rename the entityReferenceExpansion parameter to expandEntityReferences to
match the previous ObjC API.
* dom/NodeIterator.idl: Remove ObjCIvar from the filter attribute. The
m_filter member variable was never used in practice, it was always nil!
We can remove it and not pad the object because this can't be subclassed.
* dom/TreeWalker.idl: Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 7 Oct 2008 21:49:43 +0000 (21:49 +0000)]
Auto-generate the DOMEventTarget protocol implementation for
DOMNode and DOMSVGElementInstance.
https://bugs.webkit.org/show_bug.cgi?id=21432
Reviewed by Darin Adler.
* WebCore.xcodeproj/project.pbxproj: Add ObjCEventListener.{mm,h}.
* bindings/objc/DOM.mm: Remove many unneeded header includes. Move
ObjCEventListener to it's own file. Remove the manual impelmentations
of the DOMEventTarget protocol for DOMNode and DOMSVGElementInstance.
* bindings/objc/DOMEvents.h: Remove the categories that defined
DOMEventTarget for DOMNode and DOMSVGElementInstance.
* bindings/objc/ObjCEventListener.h: Split out from DOM.mm.
* bindings/objc/ObjCEventListener.mm: Split out from DOM.mm.
(WebCore::ObjCEventListener::find): Moved from DOM.mm.
(WebCore::ObjCEventListener::wrap): Use PassRefPtr to prevent the
callers from doing a manual deref.
(WebCore::ObjCEventListener::ObjCEventListener): Moved from DOM.mm.
(WebCore::ObjCEventListener::~ObjCEventListener): Ditto.
* bindings/scripts/CodeGeneratorObjC.pm:
(GetObjCTypeGetter): Add a case for EventListener and use WTF::getPtr.
(AddIncludesForType): Include ObjCEventListener.h for EventListener.
And include EventTargetSVGElementInstance.h for SVGElementInstance.
(GenerateHeader): Remove the check for multiple parents.
(GenerateImplementation): Remove the check for multiple parents. Remove
the @deprecatedFunctions array since deprecated methods get generated
into the main @interface now to work with protocols. Add support
for the EventTargetNodeCast extended attribute. Add support for
EventListener parameters.
* dom/Node.idl: Define superclasses for ObjC so the implementation
and interface implement the DOMEventTarget protocol. Explicitly
specify Object as a superclass to use DOMEventTarget. Object will turn
into DOMObject. This is needed to take the code generator down the right
path of multiple super-classes as protocols. It is ObjC only for legacy
reasons. The event target methods are normally on NodeEventTarget, a
subclass of Node. But the ObjC API has never has this subclass and
they are on DOMNode.
* svg/SVGElementInstance.idl: Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 21:36:39 +0000 (21:36 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Add new pseudo-elements and pseudo-classes that will enable scrollbars to be styled by CSS.
The new pseudo-elements are:
scrollbar
scrollbar-button
scrollbar-corner
scrollbar-thumb
scrollbar-track
These elements will work with all the usual pseudo-classes (:hover, :active, :enabled, :disabled, etc.) and with
the following new pseudo-classes:
scrollbar-active
scrollbar-back
scrollbar-forward
scrollbar-horizontal
scrollbar-vertical
Reviewed by Adele
* css/CSSSelector.cpp:
(WebCore::CSSSelector::extractPseudoType):
* css/CSSSelector.h:
(WebCore::CSSSelector::):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37394
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 7 Oct 2008 21:35:28 +0000 (21:35 +0000)]
Make sure short functions get included in ChangeLog output for git repositories
Reviewed by Dave Kilzer.
* Scripts/prepare-ChangeLog:
(sub diffCommand): Pass -U0 to git diff so that each contiguous change
will get its own chunk without any surrounding context.
(sub extractLineRange): Use the line numbers from the chunk header
without modifying them now that they're accurate.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37393
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2008 21:29:48 +0000 (21:29 +0000)]
2008-10-07 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz Pettel.
Update WebKitSystemInterface.
* libWebKitSystemInterfaceLeopard.a:
* libWebKitSystemInterfaceTiger.a:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37392
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 21:27:54 +0000 (21:27 +0000)]
Reviewed by Darin Adler, Nikolas Zimmermann and Dave Hyatt.
svgElement.className.baseValue = "foo" does not work
https://bugs.webkit.org/show_bug.cgi?id=20651
* dom/StyledElement.cpp:
(WebCore::StyledElement::classAttributeChanged):
(WebCore::StyledElement::parseMappedAttribute):
* dom/StyledElement.h:
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::svgAttributeChanged):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37391
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 21:22:05 +0000 (21:22 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=18989
Remove global substitution from SunSpider regexp test, since only Firefox was honoring it and
we want all browsers to be doing the same thing on the test.
Reviewed by Maciej
* tests/regexp-dna.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37390
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 7 Oct 2008 21:08:29 +0000 (21:08 +0000)]
Add support to the Resources panel for queries like "#123", "foo #123",
"line: 123" and "foo line: 123". These will match the query limiting
the search only to the line specified. If only a line is specified,
the whole line is matched.
https://bugs.webkit.org/show_bug.cgi?id=21422
Reviewed by Darin Adler.
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame.prototype.sourceRow): Don't return the last
row if the index is greater than the rows collection. Let it return
undefined by indexing out-of-bounds.
* inspector/front-end/SourceView.js:
(WebInspector.SourceView.prototype.performSearch): Add support for
queries like "#123", "foo #123", "line: 123" and "foo line: 123".
Also match the whole query to the whole document in case there are
colors like "#333".
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37389
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 7 Oct 2008 20:49:36 +0000 (20:49 +0000)]
2008-10-07 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich.
Roll r37370 back in with bug fixes.
- PropertyMap::storageSize() should reflect the number of keys + deletedOffsets
and has nothing to do with the internal deletedSentinel count anymore.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37388
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 20:32:12 +0000 (20:32 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Move viewless WebKit methods that Safari needs from WebViewInternal to WebViewPrivate.
Reviewed by Tim Hatcher
* WebView/WebView.mm:
(WebKitInitializeApplicationCachePathIfNecessary):
(-[WebView _registerDraggedTypes]):
(-[WebView _usesDocumentViews]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
(-[WebView isFlipped]):
(-[WebView viewWillDraw]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37387
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Tue, 7 Oct 2008 20:27:50 +0000 (20:27 +0000)]
2008-10-07 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
Move callframe initialization into JIT code, again.
As a part of the restructuring the second result from functions is now
returned in edx, allowing the new value of 'r' to be returned via a
register, and stored to the stack from JIT code, too.
4.5% progression on v8-tests. (3% in their harness)
* VM/CTI.cpp:
(JSC::):
(JSC::CTI::emitCall):
(JSC::CTI::compileOpCall):
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompileSlowCases):
(JSC::CTI::privateCompile):
* VM/CTI.h:
(JSC::CallRecord::CallRecord):
* VM/Machine.cpp:
(JSC::Machine::cti_op_call_JSFunction):
(JSC::Machine::cti_op_construct_JSConstruct):
(JSC::Machine::cti_op_resolve_func):
(JSC::Machine::cti_op_post_inc):
(JSC::Machine::cti_op_resolve_with_base):
(JSC::Machine::cti_op_post_dec):
* VM/Machine.h:
* kjs/JSFunction.h:
* kjs/ScopeChain.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37386
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 20:17:58 +0000 (20:17 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Fix crash in isFlipped. Null check _private since isFlipped can get called from within AppKit
machinery during teardown of the WebView.
Reviewed by Adam Roben
* WebView/WebView.mm:
(-[WebView isFlipped]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37385
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 20:15:02 +0000 (20:15 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Make viewless WebKit update focused and active state when the window becomes and loses key.
The focus controller has been patched to understand that in viewless mode it can recur down and
update all of the frames, which is why this code works now when placed just on the WebView.
Reviewed by Adam Roben
* WebView/WebView.mm:
(-[WebView addWindowObservers]):
(-[WebView removeWindowObservers]):
(-[WebView viewWillMoveToWindow:]):
(-[WebView viewDidMoveToWindow]):
(-[WebView _updateFocusedAndActiveState]):
(-[WebView _windowDidBecomeKey:]):
(-[WebView _windowDidResignKey:]):
(-[WebView _windowWillOrderOnScreen:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37384
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 7 Oct 2008 19:35:11 +0000 (19:35 +0000)]
Fix typo in method name.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37383
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Tue, 7 Oct 2008 18:28:43 +0000 (18:28 +0000)]
2008-10-07 Alp Toker <alp@nuanti.com>
Reviewed by Mark Rowe.
https://bugs.webkit.org/show_bug.cgi?id=21392
[GTK] Auto-generate JS DOM binding sources list
Remove the huge lists of generated DOM binding sources and headers in
the build system. These are difficult to maintain and can be derived
automatically.
The new strategy is to re-use the existing lists of IDL sources (which
are needed for dist support anyway). This will also ease the addition
of new language bindings.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37382
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Tue, 7 Oct 2008 18:17:37 +0000 (18:17 +0000)]
2008-10-07 Cameron Zwarich <zwarich@apple.com>
Rubber-stamped by Mark Rowe.
Roll out r37370.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37381
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 7 Oct 2008 17:27:12 +0000 (17:27 +0000)]
2008-10-07 Darin Adler <darin@apple.com>
* coding/RefPtr.html: Second draft.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37378
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Tue, 7 Oct 2008 16:30:40 +0000 (16:30 +0000)]
2008-10-07 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Don't attempt to paint when updating control tints
We don't have a valid PlatformGraphicsContext so schedule
the dirty scrollbar/scrollview area for repaint instead.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37377
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Tue, 7 Oct 2008 11:20:56 +0000 (11:20 +0000)]
2008-10-07 Tor Arne Vestbø <tavestbo@trolltech.com>
QtWebKit build fix after changes to FrameLoaderClient.h in r37371
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 08:09:15 +0000 (08:09 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Make sure the parent visibility state is set up properly on the outermost ScrollView widget.
This fixes the repainting issues with viewless WebKit on Mac.
Reviewed by Sam Weinig
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zecke@webkit.org [Tue, 7 Oct 2008 07:54:06 +0000 (07:54 +0000)]
[qt] Build fix after Scrollbar.h and Widget.h changes.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 07:50:37 +0000 (07:50 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Make sure viewless Mac WebKit does a layout if needed before drawing.
Reviewed by Sam Weinig
* WebView/WebView.mm:
(-[WebView viewWillDraw]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37373
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 07:47:23 +0000 (07:47 +0000)]
2008-10-07 David Hyatt <hyatt@apple.com>
Make sure observers get hooked up to watch for size changes in viewless WebKit mode.
Reviewed by Sam Weinig
* ChangeLog:
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]):
* WebView/WebView.mm:
(-[WebView viewWillDraw]):
(-[WebView _boundsChanged]):
(-[WebView addSizeObservers]):
(-[WebView viewDidMoveToWindow]):
(-[WebView viewDidMoveToSuperview]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37372
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Tue, 7 Oct 2008 06:58:08 +0000 (06:58 +0000)]
WebCore:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to (kinda sorta) paint basic pages (with no frames on them).
Reviewed by Sam Weinig
* WebCore.base.exp:
* WebCore.xcodeproj/project.pbxproj:
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::hasWebView):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::transitionToCommitted):
* loader/FrameLoaderClient.h:
* page/FocusController.cpp:
(WebCore::FocusController::setActive):
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::init):
(WebCore::FrameView::layoutIfNeededRecursive):
* page/FrameView.h:
WebKit/gtk:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to paint some basic pages.
Reviewed by Sam Weinig
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
* WebCoreSupport/FrameLoaderClientGtk.h:
WebKit/mac:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to paint some basic pages.
Reviewed by Sam Weinig
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::windowResizerRect):
(WebChromeClient::repaint):
(WebChromeClient::screenToWindow):
(WebChromeClient::windowToScreen):
(WebChromeClient::platformWindow):
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayoutForNonHTML):
(WebFrameLoaderClient::dispatchDidCommitLoad):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebFrameLoaderClient::createFrame):
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]):
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
* WebView/WebFrameViewInternal.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawSingleRect:]):
(-[WebHTMLView drawRect:]):
* WebView/WebView.mm:
(-[WebView isFlipped]):
(-[WebView _boundsChanged]):
(-[WebView _mustDrawUnionedRect:singleRects:count:]):
(-[WebView drawSingleRect:]):
(-[WebView drawRect:]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView initWithFrame:frameName:groupName:]):
(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
(-[WebView initWithCoder:]):
(-[WebView removeSizeObservers]):
(-[WebView viewWillMoveToWindow:]):
(-[WebView viewWillMoveToSuperview:]):
(-[WebView _usesDocumentViews]):
* WebView/WebViewInternal.h:
WebKit/qt:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to paint some basic pages.
Reviewed by Sam Weinig
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage):
WebKit/win:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to paint some basic pages.
Reviewed by Sam Weinig
* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::createFrame):
* WebCoreSupport/WebFrameLoaderClient.h:
WebKit/wx:
2008-10-06 David Hyatt <hyatt@apple.com>
Enable viewless Mac WebKit to paint some basic pages.
Reviewed by Sam Weinig
* WebKitSupport/FrameLoaderClientWx.cpp:
* WebKitSupport/FrameLoaderClientWx.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37371
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 7 Oct 2008 05:43:06 +0000 (05:43 +0000)]
2008-10-06 Sam Weinig <sam@webkit.org>
Reviewed by Cameron Zwarich.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21415
Improve the division between PropertyStorageArray and PropertyMap
- Rework ProperyMap to store offsets in the value so that they don't
change when rehashing. This allows us not to have to keep the
PropertyStorageArray in sync and thus not have to pass it in.
- Rename PropertyMap::getOffset -> PropertyMap::get since put/remove
now also return offsets.
- A Vector of deleted offsets is now needed since the storage is out of
band.
1% win on SunSpider. Wash on V8 suite.
* JavaScriptCore.exp:
* VM/CTI.cpp:
(JSC::transitionWillNeedStorageRealloc):
* VM/Machine.cpp:
(JSC::Machine::privateExecute):
Transition logic can be greatly simplified by the fact that
the storage capacity is always known, and is correct for the
inline case.
* kjs/JSObject.cpp:
(JSC::JSObject::put): Rename getOffset -> get.
(JSC::JSObject::deleteProperty): Ditto.
(JSC::JSObject::getPropertyAttributes): Ditto.
(JSC::JSObject::removeDirect): Use returned offset to
clear the value in the PropertyNameArray.
(JSC::JSObject::allocatePropertyStorage): Add assert.
* kjs/JSObject.h:
(JSC::JSObject::getDirect): Rename getOffset -> get
(JSC::JSObject::getDirectLocation): Rename getOffset -> get
(JSC::JSObject::putDirect): Use propertyStorageCapacity to determine whether
or not to resize. Also, since put now returns an offset (and thus
addPropertyTransition does also) setting of the PropertyStorageArray is
now done here.
(JSC::JSObject::transitionTo):
* kjs/PropertyMap.cpp:
(JSC::PropertyMap::checkConsistency): PropertyStorageArray is no longer
passed in.
(JSC::PropertyMap::operator=): Copy the delete offsets vector.
(JSC::PropertyMap::put): Instead of setting the PropertyNameArray
explicitly, return the offset where the value should go.
(JSC::PropertyMap::remove): Instead of removing from the PropertyNameArray
explicitly, return the offset where the value should be removed.
(JSC::PropertyMap::get): Switch to using the stored offset, instead
of the implicit one.
(JSC::PropertyMap::insert):
(JSC::PropertyMap::expand): This is never called when m_table is null,
so remove that branch and add it as an assertion.
(JSC::PropertyMap::createTable): Consistency checks no longer take
a PropertyNameArray.
(JSC::PropertyMap::rehash): No need to rehash the PropertyNameArray
now that it is completely out of band.
* kjs/PropertyMap.h:
(JSC::PropertyMapEntry::PropertyMapEntry): Store offset into PropertyNameArray.
(JSC::PropertyMap::get): Switch to using the stored offset, instead
of the implicit one.
* kjs/StructureID.cpp:
(JSC::StructureID::StructureID): Initialize the propertyStorageCapacity to
JSObject::inlineStorageCapacity.
(JSC::StructureID::growPropertyStorageCapacity): Grow the storage capacity as
described below.
(JSC::StructureID::addPropertyTransition): Copy the storage capacity.
(JSC::StructureID::toDictionaryTransition): Ditto.
(JSC::StructureID::changePrototypeTransition): Ditto.
(JSC::StructureID::getterSetterTransition): Ditto.
* kjs/StructureID.h:
(JSC::StructureID::propertyStorageCapacity): Add propertyStorageCapacity
which is the current capacity for the JSObjects PropertyStorageArray.
It starts at the JSObject::inlineStorageCapacity (currently 2), then
when it first needs to be resized moves to the JSObject::nonInlineBaseStorageCapacity
(currently 16), and after that doubles each time.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37370
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 7 Oct 2008 04:42:51 +0000 (04:42 +0000)]
- build fix
* bindings/objc/DOMEvents.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37369
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Tue, 7 Oct 2008 03:53:47 +0000 (03:53 +0000)]
2008-10-06 Cameron Zwarich <zwarich@apple.com>
Reviewed by Oliver Hunt.
Bug 21396: Remove the OptionalCalleeActivation call frame slot
<https://bugs.webkit.org/show_bug.cgi?id=21396>
Remove the OptionalCalleeActivation call frame slot. We have to be
careful to store the activation object in a register, because objects
in the scope chain do not get marked.
This is a 0.3% speedup on both SunSpider and the V8 benchmark.
* VM/CTI.cpp:
(JSC::CTI::privateCompileMainPass):
* VM/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* VM/CodeGenerator.cpp:
(JSC::CodeGenerator::CodeGenerator):
(JSC::CodeGenerator::emitReturn):
* VM/CodeGenerator.h:
* VM/Machine.cpp:
(JSC::Machine::dumpRegisters):
(JSC::Machine::unwindCallFrame):
(JSC::Machine::privateExecute):
(JSC::Machine::cti_op_call_JSFunction):
(JSC::Machine::cti_op_push_activation):
(JSC::Machine::cti_op_tear_off_activation):
(JSC::Machine::cti_op_construct_JSConstruct):
* VM/Machine.h:
(JSC::Machine::initializeCallFrame):
* VM/RegisterFile.h:
(JSC::RegisterFile::):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37366
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:21:50 +0000 (01:21 +0000)]
2008-10-06 Tony Chang <tony@chromium.org>
Reviewed by Alexey Proskuryakov.
Chromium doesn't use pthreads on windows, so make its use conditional.
Also convert a WORD to a DWORD to avoid a compiler warning. This
matches the other methods around it.
* wtf/ThreadingWin.cpp:
(WTF::wtfThreadEntryPoint):
(WTF::ThreadCondition::broadcast):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37364
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:15:43 +0000 (01:15 +0000)]
2008-10-06 Mark Mentovai <mark@moxienet.com>
Reviewed by Tim Hatcher.
Allow ENABLE_DASHBOARD_SUPPORT and ENABLE_MAC_JAVA_BRIDGE to be
disabled on the Mac.
https://bugs.webkit.org/show_bug.cgi?id=21333
* wtf/Platform.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37363
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:14:05 +0000 (01:14 +0000)]
2008-10-06 Mark Mentovai <mark@moxienet.com>
Reviewed by Tim Hatcher.
Use #if ENABLE(feature) where possible, and #if ENABLE_feature where
Platform.h is not available, in preference to #ifdef ENABLE_feature.
#ifdef is wrong now that features are disabled by #defining
ENABLE_feature to 0.
https://bugs.webkit.org/show_bug.cgi?id=21338
* bindings/objc/DOMEvents.h:
* bindings/objc/PublicDOMInterfaces.h:
* dom/Document.idl:
* page/DOMWindow.idl:
* svg/svgtags.in:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37362
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:11:38 +0000 (01:11 +0000)]
2008-10-06 Mark Mentovai <mark@moxienet.com>
Reviewed by Sam Weinig.
* platform/network/mac/FormDataStreamMac.mm: #import <wtf/Threading.h>
to get the declaration for isMainThread().
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37361
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:09:23 +0000 (01:09 +0000)]
2008-10-06 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Tim Hatcher.
WebCoreObjCExtras.c is actually an obj-c++ file, so change its name
to reflect that.
* WebCore.xcodeproj/project.pbxproj:
* platform/mac/WebCoreObjCExtras.c: Removed.
* platform/mac/WebCoreObjCExtras.mm: Copied from WebCore/platform/mac/WebCoreObjCExtras.c.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37358
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Tue, 7 Oct 2008 01:05:34 +0000 (01:05 +0000)]
2008-10-06 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Dan Bernstein.
Added C++ forward declaration for the NSURLAuthenticationChallenge class
so that the m_currentMacChallenge variable doesn't cause a
compilation error when ResourceHandleInternal.h is included from a C++ file.
Fixes: https://bugs.webkit.org/show_bug.cgi?id=21411
* platform/network/ResourceHandleInternal.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37357
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Tue, 7 Oct 2008 00:17:26 +0000 (00:17 +0000)]
Windows build fix.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37354
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Mon, 6 Oct 2008 23:47:08 +0000 (23:47 +0000)]
JavaScriptCore:
https://bugs.webkit.org/show_bug.cgi?id=21416
Pass 0 for size to VirtualAlloc, as documented by MSDN.
Identified by Application Verifier.
Reviewed by Darin Adler.
* kjs/collector.cpp:
(KJS::freeBlock):
WebCore:
https://bugs.webkit.org/show_bug.cgi?id=21416
Add missing null checks identified by Application Verifier.
Reviewed by Darin Adler.
* platform/win/SharedTimerWin.cpp:
(WebCore::clearTimer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37353
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Mon, 6 Oct 2008 23:15:11 +0000 (23:15 +0000)]
2008-10-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
Removed accidentally left in debugging statement.
* inspector/front-end/inspector.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37352
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Mon, 6 Oct 2008 23:10:09 +0000 (23:10 +0000)]
2008-10-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher and Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=21412
Bug 21412: Refactor user initiated profile count to be more stable
* inspector/InspectorController.cpp: Keep track of the user-initiated
profiles here now.
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::startUserInitiatedProfiling):
(WebCore::InspectorController::stopUserInitiatedProfiling):
* inspector/InspectorController.h:
The front end will now need to check for the existence of the user-
initiated profile title and use its count instead of keeping its own.
* inspector/front-end/ProfilesPanel.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37351
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Mon, 6 Oct 2008 23:09:53 +0000 (23:09 +0000)]
2008-10-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcheri and Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=21412
Bug 21412: Refactor user initiated profile count to be more stable
- Export UString::from for use with creating the profile title.
* JavaScriptCore.exp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37350
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Mon, 6 Oct 2008 23:08:16 +0000 (23:08 +0000)]
JavaScriptCore:
2008-10-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
https://bugs.webkit.org/show_bug.cgi?id=21412
Bug 21412: Refactor user initiated profile count to be more stable
- Export UString::from for use with creating the profile title.
* JavaScriptCore.exp:
WebCore:
2008-10-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
https://bugs.webkit.org/show_bug.cgi?id=21412
Bug 21412: Refactor user initiated profile count to be more stable
* inspector/InspectorController.cpp: Keep track of the user-initiated
profiles here now.
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::startUserInitiatedProfiling):
(WebCore::InspectorController::stopUserInitiatedProfiling):
* inspector/InspectorController.h:
The front end will now need to check for the existence of the user-
initiated profile title and use its count instead of keeping its own.
* inspector/front-end/ProfilesPanel.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37349
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kdecker@apple.com [Mon, 6 Oct 2008 22:41:15 +0000 (22:41 +0000)]
Rubber-stamped by Anders Carlsson.
Rename _webkit_applicationCacheDirectoryWithBundleIdentifier to _webkit_localCacheDirectoryWithBundleIdentifier.
* Misc/WebKitNSStringExtras.h:
* Misc/WebKitNSStringExtras.m:
(+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):
* WebView/WebDataSource.mm:
(-[WebDataSource _transferApplicationCache:]):
* WebView/WebView.mm:
(WebKitInitializeApplicationCachePathIfNecessary):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37348
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 22:22:35 +0000 (22:22 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Make WebNetscapePluginStream a WebCore::NetscapePlugInStreamLoaderClient.
* Plugins/WebBaseNetscapePluginStream.h:
(WebNetscapePluginStream::~WebNetscapePluginStream):
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::didReceiveResponse):
(-[WebBaseNetscapePluginStream startStreamWithResponse:]):
(WebNetscapePluginStream::wantsAllStreams):
(-[WebBaseNetscapePluginStream wantsAllStreams]):
(WebNetscapePluginStream::didFail):
(-[WebBaseNetscapePluginStream destroyStreamWithError:]):
(WebNetscapePluginStream::didFinishLoading):
(-[WebBaseNetscapePluginStream finishedLoading]):
(WebNetscapePluginStream::didReceiveData):
(-[WebBaseNetscapePluginStream receivedData:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37347
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 21:56:30 +0000 (21:56 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Bring back the stop method. It was called through performSelector, which
is why I couldn't find any references to it.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(-[WebBaseNetscapePluginStream stop]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37346
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 21:28:52 +0000 (21:28 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
More conversion and cleanup.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::startStream):
(-[WebBaseNetscapePluginStream startStreamWithResponse:]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37345
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 21:05:39 +0000 (21:05 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Fold initWithRequestURL into initWithRequest.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37344
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 20:57:02 +0000 (20:57 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Change the init methods not to return nil on failures. (These failures never occur anyway)
Use initWithRequest as the initializer, initWithRequestURL is going to be merged with it.
* Plugins/WebBaseNetscapePluginStream.mm:
(-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
(-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37343
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 20:34:16 +0000 (20:34 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt.
Convert more methods over to C++.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::ownerForStream):
(WebNetscapePluginStream::pluginCancelledConnectionError):
(WebNetscapePluginStream::errorForReason):
(-[WebBaseNetscapePluginStream errorForReason:]):
(-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
(WebNetscapePluginStream::cancelLoadAndDestroyStreamWithError):
(-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
(WebNetscapePluginStream::deliverData):
(WebNetscapePluginStream::deliverDataTimerFired):
(WebNetscapePluginStream::deliverDataToFile):
(-[WebBaseNetscapePluginStream finishedLoading]):
(-[WebBaseNetscapePluginStream receivedData:]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView destroyStream:reason:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37342
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 6 Oct 2008 20:25:46 +0000 (20:25 +0000)]
Reviewed by Sam Weinig.
- separate GDI text drawing into its own function
* platform/graphics/win/FontCGWin.cpp:
(WebCore::drawGDIGlyphs):
(WebCore::Font::drawGlyphs):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37341
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Mon, 6 Oct 2008 20:13:52 +0000 (20:13 +0000)]
2008-10-06 David Hyatt <hyatt@apple.com>
Add SPI for a new viewless WebKit mode. The idea is that when this flag is set there will be no
views created except for the outermost WebView.
Reviewed by Tim Hatcher
* WebView/WebView.mm:
* WebView/WebViewInternal.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37340
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 6 Oct 2008 20:02:07 +0000 (20:02 +0000)]
2008-10-06 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt.
Convert more methods over to C++.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::reasonForError):
(WebNetscapePluginStream::destroyStreamWithReason):
(WebNetscapePluginStream::cancelLoadWithError):
(-[WebBaseNetscapePluginStream cancelLoadWithError:]):
(WebNetscapePluginStream::destroyStreamWithError):
(-[WebBaseNetscapePluginStream destroyStreamWithError:]):
(-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
(-[WebBaseNetscapePluginStream _deliverDataToFile:]):
(-[WebBaseNetscapePluginStream finishedLoading]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37339
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Mon, 6 Oct 2008 19:55:09 +0000 (19:55 +0000)]
<rdar://problem/
6249833> Fix default button appearance
Reviewed by Adele Peterson.
* rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::supportsFocus):
(WebCore::RenderThemeWin::determineClassicState):
(WebCore::RenderThemeWin::determineButtonState):
(WebCore::RenderThemeWin::getClassicThemeData):
(WebCore::RenderThemeWin::getThemeData):
(WebCore::drawControl):
* rendering/RenderThemeWin.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37338
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 18:31:07 +0000 (18:31 +0000)]
JavaScriptCore:
2008-10-06 Maciej Stachowiak <mjs@apple.com>
Not reviewed. Build fix.
- revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
* API/JSValueRef.cpp:
(JSValueToBoolean):
* ChangeLog:
* JavaScriptCore.exp:
* VM/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* VM/Machine.cpp:
(JSC::Machine::privateExecute):
(JSC::Machine::cti_op_loop_if_true):
(JSC::Machine::cti_op_not):
(JSC::Machine::cti_op_jtrue):
* kjs/ArrayPrototype.cpp:
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncSome):
* kjs/BooleanConstructor.cpp:
(JSC::constructBoolean):
(JSC::callBooleanConstructor):
* kjs/GetterSetter.h:
* kjs/JSCell.h:
(JSC::JSValue::toBoolean):
* kjs/JSNumberCell.cpp:
(JSC::JSNumberCell::toBoolean):
* kjs/JSNumberCell.h:
* kjs/JSObject.cpp:
(JSC::JSObject::toBoolean):
* kjs/JSObject.h:
* kjs/JSString.cpp:
(JSC::JSString::toBoolean):
* kjs/JSString.h:
* kjs/JSValue.h:
* kjs/RegExpConstructor.cpp:
(JSC::setRegExpConstructorMultiline):
* kjs/RegExpObject.cpp:
(JSC::RegExpObject::match):
* kjs/RegExpPrototype.cpp:
(JSC::regExpProtoFuncToString):
JavaScriptGlue:
2008-10-06 Maciej Stachowiak <mjs@apple.com>
Not reviewed. Build fix.
- revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
* JSUtils.cpp:
(KJSValueToCFTypeInternal):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37337
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 18:19:20 +0000 (18:19 +0000)]
2008-10-06 Maciej Stachowiak <mjs@apple.com>
Not reviewed.
- fix build; toBoolean no longer takes an ExecState
* JSUtils.cpp:
(KJSValueToCFTypeInternal):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37336
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Mon, 6 Oct 2008 18:11:31 +0000 (18:11 +0000)]
2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Add native virtual keycode to PlatformKeyboardEvent
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37335
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Mon, 6 Oct 2008 17:51:39 +0000 (17:51 +0000)]
2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Enable WebCore::String <> CFStringRef conversion functions for QtWebKit/Mac
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37334
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 17:50:08 +0000 (17:50 +0000)]
2008-10-06 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam Weinig.
- optimize op_jtrue, op_loop_if_true and op_not in various ways
https://bugs.webkit.org/show_bug.cgi?id=21404
1) Make JSValue::toBoolean nonvirtual and completely inline by
making use of the StructureID type field.
2) Make JSValue::toBoolean not take an ExecState; doesn't need it.
3) Make op_not, op_loop_if_true and op_jtrue not read the
ExecState (toBoolean doesn't need it any more) and not check
exceptions (toBoolean can't throw).
* API/JSValueRef.cpp:
(JSValueToBoolean):
* JavaScriptCore.exp:
* VM/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* VM/Machine.cpp:
(JSC::Machine::privateExecute):
(JSC::Machine::cti_op_loop_if_true):
(JSC::Machine::cti_op_not):
(JSC::Machine::cti_op_jtrue):
* kjs/ArrayPrototype.cpp:
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncSome):
* kjs/BooleanConstructor.cpp:
(JSC::constructBoolean):
(JSC::callBooleanConstructor):
* kjs/GetterSetter.h:
* kjs/JSCell.h:
(JSC::JSValue::toBoolean):
* kjs/JSNumberCell.cpp:
* kjs/JSNumberCell.h:
(JSC::JSNumberCell::toBoolean):
* kjs/JSObject.cpp:
* kjs/JSObject.h:
(JSC::JSObject::toBoolean):
(JSC::JSCell::toBoolean):
* kjs/JSString.cpp:
* kjs/JSString.h:
(JSC::JSString::toBoolean):
* kjs/JSValue.h:
* kjs/RegExpConstructor.cpp:
(JSC::setRegExpConstructorMultiline):
* kjs/RegExpObject.cpp:
(JSC::RegExpObject::match):
* kjs/RegExpPrototype.cpp:
(JSC::regExpProtoFuncToString):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37333
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Mon, 6 Oct 2008 17:46:52 +0000 (17:46 +0000)]
2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Use bundles on QtWebKit/Mac for platform modules
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37332
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Mon, 6 Oct 2008 17:00:48 +0000 (17:00 +0000)]
2008-10-06 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Build fix for MinGW.
* platform/win/SystemTimeWin.cpp:
* plugins/win/PluginViewWin.cpp:
(WebCore::PluginView::invalidateRect):
2008-10-06 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Build fix for MinGW.
* JavaScriptCore.pri:
* kjs/DateMath.cpp:
(JSC::highResUpTime):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37331
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 6 Oct 2008 15:44:16 +0000 (15:44 +0000)]
Mimic the inspector/ directory structure in WebCore.vcproj
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37330
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 6 Oct 2008 15:39:39 +0000 (15:39 +0000)]
Windows build fix
* WebCore.vcproj/WebCore.vcproj: Update the Include path for all
configurations to include WebCore/inspector.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37329
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Mon, 6 Oct 2008 08:23:37 +0000 (08:23 +0000)]
Reviewed by Darin Adler.
SVG should support ascent and descent properties <font-face> instead of <font>!
https://bugs.webkit.org/show_bug.cgi?id=21365
Tested by many many existing SVG tests.
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::ascent):
(WebCore::SVGFontFaceElement::descent):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37328
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 06:44:03 +0000 (06:44 +0000)]
2008-10-05 Darin Fisher <darin@chromium.org>
Reviewed by Eric Seidel.
REGRESSION: crash in ScriptElement::notifyFinished
Fixes https://bugs.webkit.org/show_bug.cgi?id=21329
* dom/ScriptElement.cpp:
(WebCore::ScriptElementData::notifyFinished): Revert part of r35744 to
ensure that the ScriptElementData object is not destroyed prematurely.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37327
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Mon, 6 Oct 2008 06:33:06 +0000 (06:33 +0000)]
2008-10-05 Cameron Zwarich <zwarich@apple.com>
Reviewed by Oliver Hunt.
Remove ScopeNode::containsClosures() now that it is unused.
* kjs/nodes.h:
(JSC::ScopeNode::containsClosures):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37326
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 06:05:19 +0000 (06:05 +0000)]
2008-10-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Cameron Zwarich.
- fix releas-only test failures caused by the fix to bug 21375
* VM/Machine.cpp:
(JSC::Machine::unwindCallFrame): Update ExecState while unwinding call frames;
it now matters more to have a still-valid ExecState, since dynamicGlobalObject
will make use of the ExecState's scope chain.
* VM/Machine.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37325
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Mon, 6 Oct 2008 06:00:58 +0000 (06:00 +0000)]
2008-10-05 Cameron Zwarich <zwarich@apple.com>
Reviewed by Oliver Hunt.
Bug 21364: Remove the branch in op_ret for OptionalCalleeActivation and OptionalCalleeArguments
<https://bugs.webkit.org/show_bug.cgi?id=21364>
Use information from the parser to detect whether an activation is
needed or 'arguments' is used, and emit explicit instructions to tear
them off before op_ret. This allows a branch to be removed from op_ret
and simplifies some other code. This does cause a small change in the
behaviour of 'f.arguments'; it is no longer live when 'arguments' is not
mentioned in the lexical scope of the function.
It should now be easy to remove the OptionaCalleeActivation slot in the
call frame, but this will be done in a later patch.
JavaScriptCore:
* VM/CTI.cpp:
(JSC::CTI::privateCompileMainPass):
* VM/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* VM/CodeGenerator.cpp:
(JSC::CodeGenerator::emitReturn):
* VM/CodeGenerator.h:
* VM/Machine.cpp:
(JSC::Machine::unwindCallFrame):
(JSC::Machine::privateExecute):
(JSC::Machine::retrieveArguments):
(JSC::Machine::cti_op_create_arguments):
(JSC::Machine::cti_op_tear_off_activation):
(JSC::Machine::cti_op_tear_off_arguments):
* VM/Machine.h:
* VM/Opcode.h:
* kjs/Arguments.cpp:
(JSC::Arguments::mark):
* kjs/Arguments.h:
(JSC::Arguments::isTornOff):
(JSC::Arguments::Arguments):
(JSC::Arguments::copyRegisters):
(JSC::JSActivation::copyRegisters):
* kjs/JSActivation.cpp:
(JSC::JSActivation::argumentsGetter):
* kjs/JSActivation.h:
LayoutTests:
* fast/js/function-dot-arguments-expected.txt:
* fast/js/resources/function-dot-arguments.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37324
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Mon, 6 Oct 2008 02:48:08 +0000 (02:48 +0000)]
2008-10-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- fixed "REGRESSION (r37297): fast/js/deep-recursion-test takes too long and times out"
https://bugs.webkit.org/show_bug.cgi?id=21375
The problem is that dynamicGlobalObject had become O(N) in number
of call frames, but unwinding the stack for an exception called it
for every call frame, resulting in O(N^2) behavior for an
exception thrown from inside deep recursion.
Instead of doing it that way, stash the dynamic global object in JSGlobalData.
* JavaScriptCore.exp:
* VM/Machine.cpp:
(JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope): Helper class to temporarily
store and later restore a dynamicGlobalObject in JSGlobalData.
(JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
(JSC::Machine::execute): In each version, establish a DynamicGlobalObjectScope.
For ProgramNode, always establish set new dynamicGlobalObject, for FunctionBody and Eval,
only if none is currently set.
* VM/Machine.h:
* kjs/ExecState.h:
* kjs/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData): Ininitalize new dynamicGlobalObject field to 0.
* kjs/JSGlobalData.h:
* kjs/JSGlobalObject.h:
(JSC::ExecState::dynamicGlobalObject): Moved here from ExecState for benefit of inlining.
Return lexical global object if this is a globalExec(), otherwise look in JSGlobalData
for the one stashed there.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37323
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Mon, 6 Oct 2008 01:43:07 +0000 (01:43 +0000)]
2008-10-05 Chris Lord <chris@openedhand.com>
Reviewed by Alp Toker. Landed by Jan Alonzo.
https://bugs.webkit.org/show_bug.cgi?id=20624
WebKit-gtk uses deprecated GtkType/GtkObject
* plugins/gtk/gtk2xtbin.c:
(gtk_xtbin_get_type):
* plugins/gtk/gtk2xtbin.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37322
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 6 Oct 2008 00:58:42 +0000 (00:58 +0000)]
2008-10-05 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Avoid an extra lookup when transitioning to an existing StructureID
by caching the offset of property that caused the transition.
1% win on V8 suite. Wash on SunSpider.
* kjs/PropertyMap.cpp:
(JSC::PropertyMap::put):
* kjs/PropertyMap.h:
* kjs/StructureID.cpp:
(JSC::StructureID::StructureID):
(JSC::StructureID::addPropertyTransition):
* kjs/StructureID.h:
(JSC::StructureID::setCachedTransistionOffset):
(JSC::StructureID::cachedTransistionOffset):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37321
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cwzwarich@webkit.org [Sun, 5 Oct 2008 22:47:24 +0000 (22:47 +0000)]
2008-10-05 Cameron Zwarich <zwarich@apple.com>
Reviewed by Maciej Stachowiak.
Bug 21364: Remove the branch in op_ret for OptionalCalleeActivation and OptionalCalleeArguments
<https://bugs.webkit.org/show_bug.cgi?id=21364>
This patch does not yet remove the branch, but it does a bit of refactoring
so that a CodeGenerator now knows whether the associated CodeBlock will need
a full scope before doing any code generation. This makes it possible to emit
explicit tear-off instructions before every op_ret.
* VM/CodeBlock.h:
(JSC::CodeBlock::CodeBlock):
* VM/CodeGenerator.cpp:
(JSC::CodeGenerator::generate):
(JSC::CodeGenerator::CodeGenerator):
(JSC::CodeGenerator::emitPushScope):
(JSC::CodeGenerator::emitPushNewScope):
* kjs/nodes.h:
(JSC::ScopeNode::needsActivation):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37320
268f45cc-cd09-0410-ab3c-
d52691b4dbfc