1. 06 Jan, 2009 29 commits
    • barraclough@apple.com's avatar
      JavaScriptCore: · b9ad540d
      barraclough@apple.com authored
      2009-01-05  Gavin Barraclough  <baraclough@apple.com>
      
              Reviewed by Oliver Hunt.
      
              Replace all uses of JSValue* with a new smart pointer type, JSValuePtr.
              
              A JavaScript value may be a heap object or boxed primitive, represented by a
              pointer, or may be an unboxed immediate value, such as an integer.  Since a
              value may dynamically need to contain either a pointer value or an immediate,
              we encode immediates as pointer values (since all valid JSCell pointers are
              allocated at alligned addesses, unaligned addresses are available to encode
              immediates).  As such all JavaScript values are represented using a JSValue*.
      
              This implementation is encumbered by a number of constraints.  It ties the
              JSValue representation to the size of pointer on the platform, which, for
              example, means that we currently can represent different ranges of integers
              as immediates on x86 and x86-64.  It also prevents us from overloading the
              to-boolean conversion used to test for noValue() - effectively forcing us
              to represent noValue() as 0.  This would potentially be problematic were we
              to wish to encode integer values differently (e.g. were we to use the v8
              encoding, where pointers are tagged with 1 and integers with 0, then the
              immediate integer 0 would conflict with noValue()).
      
              This patch replaces all usage of JSValue* with a new class, JSValuePtr,
              which encapsulates the pointer.  JSValuePtr maintains the same interface as
              JSValue*, overloading operator-> and operator bool such that previous
              operations in the code on variables of type JSValue* are still supported.
      
              In order to provide a ProtectPtr<> type with support for the new value
              representation (without using the internal JSValue type directly), a new
              ProtectJSValuePtr type has been added, equivalent to the previous type
              ProtectPtr<JSValue>.
      
              This patch is likely the first in a sequence of three changes.  With the
              value now encapsulated it will likely make sense to migrate the functionality
              from JSValue into JSValuePtr, such that the internal pointer representation
              need not be exposed.  Through migrating the functionality to the wrapper
              class the existing JSValue should be rendered redundant, and the class is
              likely to be removed (the JSValuePtr now wrapping a pointer to a JSCell).
              At this stage it will likely make sense to rename JSValuePtr to JSValue.
      
              https://bugs.webkit.org/show_bug.cgi?id=23114
      
              * API/APICast.h:
              (toJS):
              (toRef):
              * API/JSBase.cpp:
              (JSEvaluateScript):
              * API/JSCallbackConstructor.h:
              (JSC::JSCallbackConstructor::createStructure):
              * API/JSCallbackFunction.cpp:
              (JSC::JSCallbackFunction::call):
              * API/JSCallbackFunction.h:
              (JSC::JSCallbackFunction::createStructure):
              * API/JSCallbackObject.h:
              (JSC::JSCallbackObject::createStructure):
              * API/JSCallbackObjectFunctions.h:
              (JSC::::asCallbackObject):
              (JSC::::put):
              (JSC::::hasInstance):
              (JSC::::call):
              (JSC::::staticValueGetter):
              (JSC::::staticFunctionGetter):
              (JSC::::callbackGetter):
              * API/JSContextRef.cpp:
              * API/JSObjectRef.cpp:
              (JSObjectMakeConstructor):
              (JSObjectSetPrototype):
              (JSObjectGetProperty):
              (JSObjectSetProperty):
              (JSObjectGetPropertyAtIndex):
              (JSObjectSetPropertyAtIndex):
              * API/JSValueRef.cpp:
              (JSValueGetType):
              (JSValueIsUndefined):
              (JSValueIsNull):
              (JSValueIsBoolean):
              (JSValueIsNumber):
              (JSValueIsString):
              (JSValueIsObject):
              (JSValueIsObjectOfClass):
              (JSValueIsEqual):
              (JSValueIsStrictEqual):
              (JSValueIsInstanceOfConstructor):
              (JSValueToBoolean):
              (JSValueToNumber):
              (JSValueToStringCopy):
              (JSValueToObject):
              (JSValueProtect):
              (JSValueUnprotect):
              * JavaScriptCore.exp:
              * bytecode/CodeBlock.cpp:
              (JSC::valueToSourceString):
              (JSC::constantName):
              (JSC::CodeBlock::dump):
              * bytecode/CodeBlock.h:
              (JSC::CodeBlock::getConstant):
              (JSC::CodeBlock::addUnexpectedConstant):
              (JSC::CodeBlock::unexpectedConstant):
              * bytecode/EvalCodeCache.h:
              (JSC::EvalCodeCache::get):
              * bytecompiler/BytecodeGenerator.cpp:
              (JSC::BytecodeGenerator::BytecodeGenerator):
              (JSC::BytecodeGenerator::addConstant):
              (JSC::BytecodeGenerator::addUnexpectedConstant):
              (JSC::BytecodeGenerator::emitLoad):
              (JSC::BytecodeGenerator::emitLoadJSV):
              (JSC::BytecodeGenerator::emitGetScopedVar):
              (JSC::BytecodeGenerator::emitPutScopedVar):
              (JSC::BytecodeGenerator::emitNewError):
              (JSC::keyForImmediateSwitch):
              * bytecompiler/BytecodeGenerator.h:
              (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue):
              (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
              * debugger/DebuggerCallFrame.cpp:
              (JSC::DebuggerCallFrame::evaluate):
              * debugger/DebuggerCallFrame.h:
              (JSC::DebuggerCallFrame::DebuggerCallFrame):
              (JSC::DebuggerCallFrame::exception):
              * interpreter/CallFrame.cpp:
              (JSC::CallFrame::thisValue):
              * interpreter/CallFrame.h:
              (JSC::ExecState::setException):
              (JSC::ExecState::exception):
              (JSC::ExecState::exceptionSlot):
              (JSC::ExecState::hadException):
              * interpreter/Interpreter.cpp:
              (JSC::fastIsNumber):
              (JSC::fastToInt32):
              (JSC::fastToUInt32):
              (JSC::jsLess):
              (JSC::jsLessEq):
              (JSC::jsAddSlowCase):
              (JSC::jsAdd):
              (JSC::jsTypeStringForValue):
              (JSC::jsIsObjectType):
              (JSC::jsIsFunctionType):
              (JSC::Interpreter::resolve):
              (JSC::Interpreter::resolveSkip):
              (JSC::Interpreter::resolveGlobal):
              (JSC::inlineResolveBase):
              (JSC::Interpreter::resolveBase):
              (JSC::Interpreter::resolveBaseAndProperty):
              (JSC::Interpreter::resolveBaseAndFunc):
              (JSC::isNotObject):
              (JSC::Interpreter::callEval):
              (JSC::Interpreter::unwindCallFrame):
              (JSC::Interpreter::throwException):
              (JSC::Interpreter::execute):
              (JSC::Interpreter::checkTimeout):
              (JSC::Interpreter::createExceptionScope):
              (JSC::cachePrototypeChain):
              (JSC::Interpreter::tryCachePutByID):
              (JSC::countPrototypeChainEntriesAndCheckForProxies):
              (JSC::Interpreter::tryCacheGetByID):
              (JSC::Interpreter::privateExecute):
              (JSC::Interpreter::retrieveArguments):
              (JSC::Interpreter::retrieveCaller):
              (JSC::Interpreter::retrieveLastCaller):
              (JSC::Interpreter::tryCTICachePutByID):
              (JSC::Interpreter::tryCTICacheGetByID):
              (JSC::returnToThrowTrampoline):
              (JSC::Interpreter::cti_op_convert_this):
              (JSC::Interpreter::cti_op_add):
              (JSC::Interpreter::cti_op_pre_inc):
              (JSC::Interpreter::cti_op_loop_if_less):
              (JSC::Interpreter::cti_op_loop_if_lesseq):
              (JSC::Interpreter::cti_op_get_by_id_generic):
              (JSC::Interpreter::cti_op_get_by_id):
              (JSC::Interpreter::cti_op_get_by_id_second):
              (JSC::Interpreter::cti_op_get_by_id_self_fail):
              (JSC::Interpreter::cti_op_get_by_id_proto_list):
              (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
              (JSC::Interpreter::cti_op_get_by_id_proto_fail):
              (JSC::Interpreter::cti_op_get_by_id_array_fail):
              (JSC::Interpreter::cti_op_get_by_id_string_fail):
              (JSC::Interpreter::cti_op_instanceof):
              (JSC::Interpreter::cti_op_del_by_id):
              (JSC::Interpreter::cti_op_mul):
              (JSC::Interpreter::cti_op_call_NotJSFunction):
              (JSC::Interpreter::cti_op_resolve):
              (JSC::Interpreter::cti_op_construct_NotJSConstruct):
              (JSC::Interpreter::cti_op_get_by_val):
              (JSC::Interpreter::cti_op_resolve_func):
              (JSC::Interpreter::cti_op_sub):
              (JSC::Interpreter::cti_op_put_by_val):
              (JSC::Interpreter::cti_op_put_by_val_array):
              (JSC::Interpreter::cti_op_lesseq):
              (JSC::Interpreter::cti_op_loop_if_true):
              (JSC::Interpreter::cti_op_negate):
              (JSC::Interpreter::cti_op_resolve_base):
              (JSC::Interpreter::cti_op_resolve_skip):
              (JSC::Interpreter::cti_op_resolve_global):
              (JSC::Interpreter::cti_op_div):
              (JSC::Interpreter::cti_op_pre_dec):
              (JSC::Interpreter::cti_op_jless):
              (JSC::Interpreter::cti_op_not):
              (JSC::Interpreter::cti_op_jtrue):
              (JSC::Interpreter::cti_op_post_inc):
              (JSC::Interpreter::cti_op_eq):
              (JSC::Interpreter::cti_op_lshift):
              (JSC::Interpreter::cti_op_bitand):
              (JSC::Interpreter::cti_op_rshift):
              (JSC::Interpreter::cti_op_bitnot):
              (JSC::Interpreter::cti_op_resolve_with_base):
              (JSC::Interpreter::cti_op_mod):
              (JSC::Interpreter::cti_op_less):
              (JSC::Interpreter::cti_op_neq):
              (JSC::Interpreter::cti_op_post_dec):
              (JSC::Interpreter::cti_op_urshift):
              (JSC::Interpreter::cti_op_bitxor):
              (JSC::Interpreter::cti_op_bitor):
              (JSC::Interpreter::cti_op_call_eval):
              (JSC::Interpreter::cti_op_throw):
              (JSC::Interpreter::cti_op_next_pname):
              (JSC::Interpreter::cti_op_typeof):
              (JSC::Interpreter::cti_op_is_undefined):
              (JSC::Interpreter::cti_op_is_boolean):
              (JSC::Interpreter::cti_op_is_number):
              (JSC::Interpreter::cti_op_is_string):
              (JSC::Interpreter::cti_op_is_object):
              (JSC::Interpreter::cti_op_is_function):
              (JSC::Interpreter::cti_op_stricteq):
              (JSC::Interpreter::cti_op_nstricteq):
              (JSC::Interpreter::cti_op_to_jsnumber):
              (JSC::Interpreter::cti_op_in):
              (JSC::Interpreter::cti_op_switch_imm):
              (JSC::Interpreter::cti_op_switch_char):
              (JSC::Interpreter::cti_op_switch_string):
              (JSC::Interpreter::cti_op_del_by_val):
              (JSC::Interpreter::cti_op_new_error):
              (JSC::Interpreter::cti_vm_throw):
              * interpreter/Interpreter.h:
              (JSC::Interpreter::isJSArray):
              (JSC::Interpreter::isJSString):
              * interpreter/Register.h:
              (JSC::Register::):
              (JSC::Register::Register):
              (JSC::Register::jsValue):
              (JSC::Register::getJSValue):
              * jit/JIT.cpp:
              (JSC::):
              (JSC::JIT::compileOpStrictEq):
              (JSC::JIT::privateCompileMainPass):
              (JSC::JIT::privateCompileSlowCases):
              * jit/JIT.h:
              (JSC::):
              (JSC::JIT::execute):
              * jit/JITArithmetic.cpp:
              (JSC::JIT::compileFastArith_op_rshift):
              (JSC::JIT::compileFastArithSlow_op_rshift):
              * jit/JITCall.cpp:
              (JSC::JIT::unlinkCall):
              (JSC::JIT::compileOpCallInitializeCallFrame):
              (JSC::JIT::compileOpCall):
              * jit/JITInlineMethods.h:
              (JSC::JIT::emitGetVirtualRegister):
              (JSC::JIT::getConstantOperand):
              (JSC::JIT::isOperandConstant31BitImmediateInt):
              (JSC::JIT::emitPutJITStubArgFromVirtualRegister):
              (JSC::JIT::emitInitRegister):
              * jit/JITPropertyAccess.cpp:
              (JSC::resizePropertyStorage):
              (JSC::JIT::privateCompilePutByIdTransition):
              (JSC::JIT::patchGetByIdSelf):
              (JSC::JIT::patchPutByIdReplace):
              (JSC::JIT::privateCompileGetByIdSelf):
              (JSC::JIT::privateCompileGetByIdProto):
              (JSC::JIT::privateCompileGetByIdSelfList):
              (JSC::JIT::privateCompileGetByIdProtoList):
              (JSC::JIT::privateCompileGetByIdChainList):
              (JSC::JIT::privateCompileGetByIdChain):
              (JSC::JIT::privateCompilePutByIdReplace):
              * jsc.cpp:
              (functionPrint):
              (functionDebug):
              (functionGC):
              (functionVersion):
              (functionRun):
              (functionLoad):
              (functionReadline):
              (functionQuit):
              * parser/Nodes.cpp:
              (JSC::NullNode::emitBytecode):
              (JSC::ArrayNode::emitBytecode):
              (JSC::FunctionCallValueNode::emitBytecode):
              (JSC::FunctionCallResolveNode::emitBytecode):
              (JSC::VoidNode::emitBytecode):
              (JSC::ConstDeclNode::emitCodeSingle):
              (JSC::ReturnNode::emitBytecode):
              (JSC::processClauseList):
              (JSC::EvalNode::emitBytecode):
              (JSC::FunctionBodyNode::emitBytecode):
              (JSC::ProgramNode::emitBytecode):
              * profiler/ProfileGenerator.cpp:
              (JSC::ProfileGenerator::addParentForConsoleStart):
              * profiler/Profiler.cpp:
              (JSC::Profiler::willExecute):
              (JSC::Profiler::didExecute):
              (JSC::Profiler::createCallIdentifier):
              * profiler/Profiler.h:
              * runtime/ArgList.cpp:
              (JSC::ArgList::slowAppend):
              * runtime/ArgList.h:
              (JSC::ArgList::at):
              (JSC::ArgList::append):
              * runtime/Arguments.cpp:
              (JSC::Arguments::put):
              * runtime/Arguments.h:
              (JSC::Arguments::createStructure):
              (JSC::asArguments):
              * runtime/ArrayConstructor.cpp:
              (JSC::callArrayConstructor):
              * runtime/ArrayPrototype.cpp:
              (JSC::getProperty):
              (JSC::putProperty):
              (JSC::arrayProtoFuncToString):
              (JSC::arrayProtoFuncToLocaleString):
              (JSC::arrayProtoFuncJoin):
              (JSC::arrayProtoFuncConcat):
              (JSC::arrayProtoFuncPop):
              (JSC::arrayProtoFuncPush):
              (JSC::arrayProtoFuncReverse):
              (JSC::arrayProtoFuncShift):
              (JSC::arrayProtoFuncSlice):
              (JSC::arrayProtoFuncSort):
              (JSC::arrayProtoFuncSplice):
              (JSC::arrayProtoFuncUnShift):
              (JSC::arrayProtoFuncFilter):
              (JSC::arrayProtoFuncMap):
              (JSC::arrayProtoFuncEvery):
              (JSC::arrayProtoFuncForEach):
              (JSC::arrayProtoFuncSome):
              (JSC::arrayProtoFuncIndexOf):
              (JSC::arrayProtoFuncLastIndexOf):
              * runtime/BooleanConstructor.cpp:
              (JSC::callBooleanConstructor):
              (JSC::constructBooleanFromImmediateBoolean):
              * runtime/BooleanConstructor.h:
              * runtime/BooleanObject.h:
              (JSC::asBooleanObject):
              * runtime/BooleanPrototype.cpp:
              (JSC::booleanProtoFuncToString):
              (JSC::booleanProtoFuncValueOf):
              * runtime/CallData.cpp:
              (JSC::call):
              * runtime/CallData.h:
              * runtime/Collector.cpp:
              (JSC::Heap::protect):
              (JSC::Heap::unprotect):
              (JSC::Heap::heap):
              (JSC::Heap::collect):
              * runtime/Collector.h:
              * runtime/Completion.cpp:
              (JSC::evaluate):
              * runtime/Completion.h:
              (JSC::Completion::Completion):
              (JSC::Completion::value):
              (JSC::Completion::setValue):
              (JSC::Completion::isValueCompletion):
              * runtime/ConstructData.cpp:
              (JSC::construct):
              * runtime/ConstructData.h:
              * runtime/DateConstructor.cpp:
              (JSC::constructDate):
              (JSC::callDate):
              (JSC::dateParse):
              (JSC::dateNow):
              (JSC::dateUTC):
              * runtime/DateInstance.h:
              (JSC::asDateInstance):
              * runtime/DatePrototype.cpp:
              (JSC::dateProtoFuncToString):
              (JSC::dateProtoFuncToUTCString):
              (JSC::dateProtoFuncToDateString):
              (JSC::dateProtoFuncToTimeString):
              (JSC::dateProtoFuncToLocaleString):
              (JSC::dateProtoFuncToLocaleDateString):
              (JSC::dateProtoFuncToLocaleTimeString):
              (JSC::dateProtoFuncValueOf):
              (JSC::dateProtoFuncGetTime):
              (JSC::dateProtoFuncGetFullYear):
              (JSC::dateProtoFuncGetUTCFullYear):
              (JSC::dateProtoFuncToGMTString):
              (JSC::dateProtoFuncGetMonth):
              (JSC::dateProtoFuncGetUTCMonth):
              (JSC::dateProtoFuncGetDate):
              (JSC::dateProtoFuncGetUTCDate):
              (JSC::dateProtoFuncGetDay):
              (JSC::dateProtoFuncGetUTCDay):
              (JSC::dateProtoFuncGetHours):
              (JSC::dateProtoFuncGetUTCHours):
              (JSC::dateProtoFuncGetMinutes):
              (JSC::dateProtoFuncGetUTCMinutes):
              (JSC::dateProtoFuncGetSeconds):
              (JSC::dateProtoFuncGetUTCSeconds):
              (JSC::dateProtoFuncGetMilliSeconds):
              (JSC::dateProtoFuncGetUTCMilliseconds):
              (JSC::dateProtoFuncGetTimezoneOffset):
              (JSC::dateProtoFuncSetTime):
              (JSC::setNewValueFromTimeArgs):
              (JSC::setNewValueFromDateArgs):
              (JSC::dateProtoFuncSetMilliSeconds):
              (JSC::dateProtoFuncSetUTCMilliseconds):
              (JSC::dateProtoFuncSetSeconds):
              (JSC::dateProtoFuncSetUTCSeconds):
              (JSC::dateProtoFuncSetMinutes):
              (JSC::dateProtoFuncSetUTCMinutes):
              (JSC::dateProtoFuncSetHours):
              (JSC::dateProtoFuncSetUTCHours):
              (JSC::dateProtoFuncSetDate):
              (JSC::dateProtoFuncSetUTCDate):
              (JSC::dateProtoFuncSetMonth):
              (JSC::dateProtoFuncSetUTCMonth):
              (JSC::dateProtoFuncSetFullYear):
              (JSC::dateProtoFuncSetUTCFullYear):
              (JSC::dateProtoFuncSetYear):
              (JSC::dateProtoFuncGetYear):
              * runtime/DatePrototype.h:
              (JSC::DatePrototype::createStructure):
              * runtime/ErrorConstructor.cpp:
              (JSC::callErrorConstructor):
              * runtime/ErrorPrototype.cpp:
              (JSC::errorProtoFuncToString):
              * runtime/ExceptionHelpers.cpp:
              (JSC::createInterruptedExecutionException):
              (JSC::createError):
              (JSC::createStackOverflowError):
              (JSC::createUndefinedVariableError):
              (JSC::createErrorMessage):
              (JSC::createInvalidParamError):
              (JSC::createNotAConstructorError):
              (JSC::createNotAFunctionError):
              * runtime/ExceptionHelpers.h:
              * runtime/FunctionConstructor.cpp:
              (JSC::callFunctionConstructor):
              * runtime/FunctionPrototype.cpp:
              (JSC::callFunctionPrototype):
              (JSC::functionProtoFuncToString):
              (JSC::functionProtoFuncApply):
              (JSC::functionProtoFuncCall):
              * runtime/FunctionPrototype.h:
              (JSC::FunctionPrototype::createStructure):
              * runtime/GetterSetter.cpp:
              (JSC::GetterSetter::toPrimitive):
              (JSC::GetterSetter::getPrimitiveNumber):
              * runtime/GetterSetter.h:
              (JSC::asGetterSetter):
              * runtime/InitializeThreading.cpp:
              * runtime/InternalFunction.h:
              (JSC::InternalFunction::createStructure):
              (JSC::asInternalFunction):
              * runtime/JSActivation.cpp:
              (JSC::JSActivation::getOwnPropertySlot):
              (JSC::JSActivation::put):
              (JSC::JSActivation::putWithAttributes):
              (JSC::JSActivation::argumentsGetter):
              * runtime/JSActivation.h:
              (JSC::JSActivation::createStructure):
              (JSC::asActivation):
              * runtime/JSArray.cpp:
              (JSC::storageSize):
              (JSC::JSArray::JSArray):
              (JSC::JSArray::getOwnPropertySlot):
              (JSC::JSArray::put):
              (JSC::JSArray::putSlowCase):
              (JSC::JSArray::deleteProperty):
              (JSC::JSArray::getPropertyNames):
              (JSC::JSArray::setLength):
              (JSC::JSArray::pop):
              (JSC::JSArray::push):
              (JSC::JSArray::mark):
              (JSC::JSArray::sort):
              (JSC::JSArray::compactForSorting):
              (JSC::JSArray::checkConsistency):
              (JSC::constructArray):
              * runtime/JSArray.h:
              (JSC::JSArray::getIndex):
              (JSC::JSArray::setIndex):
              (JSC::JSArray::createStructure):
              (JSC::asArray):
              * runtime/JSCell.cpp:
              (JSC::JSCell::put):
              (JSC::JSCell::getJSNumber):
              * runtime/JSCell.h:
              (JSC::asCell):
              (JSC::JSValue::asCell):
              (JSC::JSValue::toPrimitive):
              (JSC::JSValue::getPrimitiveNumber):
              (JSC::JSValue::getJSNumber):
              * runtime/JSFunction.cpp:
              (JSC::JSFunction::call):
              (JSC::JSFunction::argumentsGetter):
              (JSC::JSFunction::callerGetter):
              (JSC::JSFunction::lengthGetter):
              (JSC::JSFunction::getOwnPropertySlot):
              (JSC::JSFunction::put):
              (JSC::JSFunction::construct):
              * runtime/JSFunction.h:
              (JSC::JSFunction::createStructure):
              (JSC::asFunction):
              * runtime/JSGlobalData.h:
              * runtime/JSGlobalObject.cpp:
              (JSC::markIfNeeded):
              (JSC::JSGlobalObject::put):
              (JSC::JSGlobalObject::putWithAttributes):
              (JSC::JSGlobalObject::reset):
              (JSC::JSGlobalObject::resetPrototype):
              * runtime/JSGlobalObject.h:
              (JSC::JSGlobalObject::createStructure):
              (JSC::JSGlobalObject::GlobalPropertyInfo::GlobalPropertyInfo):
              (JSC::asGlobalObject):
              (JSC::Structure::prototypeForLookup):
              * runtime/JSGlobalObjectFunctions.cpp:
              (JSC::encode):
              (JSC::decode):
              (JSC::globalFuncEval):
              (JSC::globalFuncParseInt):
              (JSC::globalFuncParseFloat):
              (JSC::globalFuncIsNaN):
              (JSC::globalFuncIsFinite):
              (JSC::globalFuncDecodeURI):
              (JSC::globalFuncDecodeURIComponent):
              (JSC::globalFuncEncodeURI):
              (JSC::globalFuncEncodeURIComponent):
              (JSC::globalFuncEscape):
              (JSC::globalFuncUnescape):
              (JSC::globalFuncJSCPrint):
              * runtime/JSGlobalObjectFunctions.h:
              * runtime/JSImmediate.cpp:
              (JSC::JSImmediate::toThisObject):
              (JSC::JSImmediate::toObject):
              (JSC::JSImmediate::prototype):
              (JSC::JSImmediate::toString):
              * runtime/JSImmediate.h:
              (JSC::JSImmediate::isImmediate):
              (JSC::JSImmediate::isNumber):
              (JSC::JSImmediate::isPositiveNumber):
              (JSC::JSImmediate::isBoolean):
              (JSC::JSImmediate::isUndefinedOrNull):
              (JSC::JSImmediate::isNegative):
              (JSC::JSImmediate::isEitherImmediate):
              (JSC::JSImmediate::isAnyImmediate):
              (JSC::JSImmediate::areBothImmediate):
              (JSC::JSImmediate::areBothImmediateNumbers):
              (JSC::JSImmediate::andImmediateNumbers):
              (JSC::JSImmediate::xorImmediateNumbers):
              (JSC::JSImmediate::orImmediateNumbers):
              (JSC::JSImmediate::rightShiftImmediateNumbers):
              (JSC::JSImmediate::canDoFastAdditiveOperations):
              (JSC::JSImmediate::addImmediateNumbers):
              (JSC::JSImmediate::subImmediateNumbers):
              (JSC::JSImmediate::incImmediateNumber):
              (JSC::JSImmediate::decImmediateNumber):
              (JSC::JSImmediate::makeValue):
              (JSC::JSImmediate::makeInt):
              (JSC::JSImmediate::makeBool):
              (JSC::JSImmediate::makeUndefined):
              (JSC::JSImmediate::makeNull):
              (JSC::JSImmediate::intValue):
              (JSC::JSImmediate::uintValue):
              (JSC::JSImmediate::boolValue):
              (JSC::JSImmediate::rawValue):
              (JSC::JSImmediate::trueImmediate):
              (JSC::JSImmediate::falseImmediate):
              (JSC::JSImmediate::undefinedImmediate):
              (JSC::JSImmediate::nullImmediate):
              (JSC::JSImmediate::zeroImmediate):
              (JSC::JSImmediate::oneImmediate):
              (JSC::JSImmediate::impossibleValue):
              (JSC::JSImmediate::toBoolean):
              (JSC::JSImmediate::getTruncatedUInt32):
              (JSC::JSImmediate::from):
              (JSC::JSImmediate::getTruncatedInt32):
              (JSC::JSImmediate::toDouble):
              (JSC::JSImmediate::getUInt32):
              (JSC::jsNull):
              (JSC::jsBoolean):
              (JSC::jsUndefined):
              (JSC::JSValue::isUndefined):
              (JSC::JSValue::isNull):
              (JSC::JSValue::isUndefinedOrNull):
              (JSC::JSValue::isBoolean):
              (JSC::JSValue::getBoolean):
              (JSC::JSValue::toInt32):
              (JSC::JSValue::toUInt32):
              (JSC::toInt32):
              (JSC::toUInt32):
              * runtime/JSNotAnObject.cpp:
              (JSC::JSNotAnObject::toPrimitive):
              (JSC::JSNotAnObject::getPrimitiveNumber):
              (JSC::JSNotAnObject::put):
              * runtime/JSNotAnObject.h:
              (JSC::JSNotAnObject::createStructure):
              * runtime/JSNumberCell.cpp:
              (JSC::JSNumberCell::toPrimitive):
              (JSC::JSNumberCell::getPrimitiveNumber):
              (JSC::JSNumberCell::getJSNumber):
              (JSC::jsNumberCell):
              (JSC::jsNaN):
              * runtime/JSNumberCell.h:
              (JSC::JSNumberCell::createStructure):
              (JSC::asNumberCell):
              (JSC::jsNumber):
              (JSC::JSValue::toJSNumber):
              * runtime/JSObject.cpp:
              (JSC::JSObject::mark):
              (JSC::JSObject::put):
              (JSC::JSObject::putWithAttributes):
              (JSC::callDefaultValueFunction):
              (JSC::JSObject::getPrimitiveNumber):
              (JSC::JSObject::defaultValue):
              (JSC::JSObject::defineGetter):
              (JSC::JSObject::defineSetter):
              (JSC::JSObject::lookupGetter):
              (JSC::JSObject::lookupSetter):
              (JSC::JSObject::hasInstance):
              (JSC::JSObject::toNumber):
              (JSC::JSObject::toString):
              (JSC::JSObject::fillGetterPropertySlot):
              * runtime/JSObject.h:
              (JSC::JSObject::getDirect):
              (JSC::JSObject::getDirectLocation):
              (JSC::JSObject::offsetForLocation):
              (JSC::JSObject::locationForOffset):
              (JSC::JSObject::getDirectOffset):
              (JSC::JSObject::putDirectOffset):
              (JSC::JSObject::createStructure):
              (JSC::asObject):
              (JSC::JSObject::prototype):
              (JSC::JSObject::setPrototype):
              (JSC::JSObject::inlineGetOwnPropertySlot):
              (JSC::JSObject::getOwnPropertySlotForWrite):
              (JSC::JSObject::getPropertySlot):
              (JSC::JSObject::get):
              (JSC::JSObject::putDirect):
              (JSC::JSObject::putDirectWithoutTransition):
              (JSC::JSObject::toPrimitive):
              (JSC::JSValue::get):
              (JSC::JSValue::put):
              (JSC::JSObject::allocatePropertyStorageInline):
              * runtime/JSPropertyNameIterator.cpp:
              (JSC::JSPropertyNameIterator::toPrimitive):
              (JSC::JSPropertyNameIterator::getPrimitiveNumber):
              * runtime/JSPropertyNameIterator.h:
              (JSC::JSPropertyNameIterator::create):
              (JSC::JSPropertyNameIterator::next):
              * runtime/JSStaticScopeObject.cpp:
              (JSC::JSStaticScopeObject::put):
              (JSC::JSStaticScopeObject::putWithAttributes):
              * runtime/JSStaticScopeObject.h:
              (JSC::JSStaticScopeObject::JSStaticScopeObject):
              (JSC::JSStaticScopeObject::createStructure):
              * runtime/JSString.cpp:
              (JSC::JSString::toPrimitive):
              (JSC::JSString::getPrimitiveNumber):
              (JSC::JSString::getOwnPropertySlot):
              * runtime/JSString.h:
              (JSC::JSString::createStructure):
              (JSC::asString):
              * runtime/JSValue.h:
              (JSC::JSValuePtr::makeImmediate):
              (JSC::JSValuePtr::immediateValue):
              (JSC::JSValuePtr::JSValuePtr):
              (JSC::JSValuePtr::operator->):
              (JSC::JSValuePtr::hasValue):
              (JSC::JSValuePtr::operator==):
              (JSC::JSValuePtr::operator!=):
              (JSC::JSValuePtr::encode):
              (JSC::JSValuePtr::decode):
              (JSC::JSValue::asValue):
              (JSC::noValue):
              (JSC::operator==):
              (JSC::operator!=):
              * runtime/JSVariableObject.h:
              (JSC::JSVariableObject::symbolTablePut):
              (JSC::JSVariableObject::symbolTablePutWithAttributes):
              * runtime/JSWrapperObject.cpp:
              (JSC::JSWrapperObject::mark):
              * runtime/JSWrapperObject.h:
              (JSC::JSWrapperObject::internalValue):
              (JSC::JSWrapperObject::setInternalValue):
              * runtime/Lookup.cpp:
              (JSC::setUpStaticFunctionSlot):
              * runtime/Lookup.h:
              (JSC::lookupPut):
              * runtime/MathObject.cpp:
              (JSC::mathProtoFuncAbs):
              (JSC::mathProtoFuncACos):
              (JSC::mathProtoFuncASin):
              (JSC::mathProtoFuncATan):
              (JSC::mathProtoFuncATan2):
              (JSC::mathProtoFuncCeil):
              (JSC::mathProtoFuncCos):
              (JSC::mathProtoFuncExp):
              (JSC::mathProtoFuncFloor):
              (JSC::mathProtoFuncLog):
              (JSC::mathProtoFuncMax):
              (JSC::mathProtoFuncMin):
              (JSC::mathProtoFuncPow):
              (JSC::mathProtoFuncRandom):
              (JSC::mathProtoFuncRound):
              (JSC::mathProtoFuncSin):
              (JSC::mathProtoFuncSqrt):
              (JSC::mathProtoFuncTan):
              * runtime/MathObject.h:
              (JSC::MathObject::createStructure):
              * runtime/NativeErrorConstructor.cpp:
              (JSC::callNativeErrorConstructor):
              * runtime/NumberConstructor.cpp:
              (JSC::numberConstructorNaNValue):
              (JSC::numberConstructorNegInfinity):
              (JSC::numberConstructorPosInfinity):
              (JSC::numberConstructorMaxValue):
              (JSC::numberConstructorMinValue):
              (JSC::callNumberConstructor):
              * runtime/NumberConstructor.h:
              (JSC::NumberConstructor::createStructure):
              * runtime/NumberObject.cpp:
              (JSC::NumberObject::getJSNumber):
              (JSC::constructNumberFromImmediateNumber):
              * runtime/NumberObject.h:
              * runtime/NumberPrototype.cpp:
              (JSC::numberProtoFuncToString):
              (JSC::numberProtoFuncToLocaleString):
              (JSC::numberProtoFuncValueOf):
              (JSC::numberProtoFuncToFixed):
              (JSC::numberProtoFuncToExponential):
              (JSC::numberProtoFuncToPrecision):
              * runtime/ObjectConstructor.cpp:
              (JSC::constructObject):
              (JSC::callObjectConstructor):
              * runtime/ObjectPrototype.cpp:
              (JSC::objectProtoFuncValueOf):
              (JSC::objectProtoFuncHasOwnProperty):
              (JSC::objectProtoFuncIsPrototypeOf):
              (JSC::objectProtoFuncDefineGetter):
              (JSC::objectProtoFuncDefineSetter):
              (JSC::objectProtoFuncLookupGetter):
              (JSC::objectProtoFuncLookupSetter):
              (JSC::objectProtoFuncPropertyIsEnumerable):
              (JSC::objectProtoFuncToLocaleString):
              (JSC::objectProtoFuncToString):
              * runtime/ObjectPrototype.h:
              * runtime/Operations.cpp:
              (JSC::equal):
              (JSC::equalSlowCase):
              (JSC::strictEqual):
              (JSC::strictEqualSlowCase):
              (JSC::throwOutOfMemoryError):
              * runtime/Operations.h:
              (JSC::equalSlowCaseInline):
              (JSC::strictEqualSlowCaseInline):
              * runtime/PropertySlot.cpp:
              (JSC::PropertySlot::functionGetter):
              * runtime/PropertySlot.h:
              (JSC::PropertySlot::PropertySlot):
              (JSC::PropertySlot::getValue):
              (JSC::PropertySlot::putValue):
              (JSC::PropertySlot::setValueSlot):
              (JSC::PropertySlot::setValue):
              (JSC::PropertySlot::setCustom):
              (JSC::PropertySlot::setCustomIndex):
              (JSC::PropertySlot::slotBase):
              (JSC::PropertySlot::setBase):
              (JSC::PropertySlot::):
              * runtime/Protect.h:
              (JSC::gcProtect):
              (JSC::gcUnprotect):
              (JSC::ProtectedPtr::ProtectedPtr):
              (JSC::ProtectedPtr::operator JSValuePtr):
              (JSC::ProtectedJSValuePtr::ProtectedJSValuePtr):
              (JSC::ProtectedJSValuePtr::get):
              (JSC::ProtectedJSValuePtr::operator JSValuePtr):
              (JSC::ProtectedJSValuePtr::operator->):
              (JSC::::ProtectedPtr):
              (JSC::::~ProtectedPtr):
              (JSC::::operator):
              (JSC::ProtectedJSValuePtr::~ProtectedJSValuePtr):
              (JSC::ProtectedJSValuePtr::operator=):
              (JSC::operator==):
              (JSC::operator!=):
              * runtime/RegExpConstructor.cpp:
              (JSC::RegExpConstructor::getBackref):
              (JSC::RegExpConstructor::getLastParen):
              (JSC::RegExpConstructor::getLeftContext):
              (JSC::RegExpConstructor::getRightContext):
              (JSC::regExpConstructorDollar1):
              (JSC::regExpConstructorDollar2):
              (JSC::regExpConstructorDollar3):
              (JSC::regExpConstructorDollar4):
              (JSC::regExpConstructorDollar5):
              (JSC::regExpConstructorDollar6):
              (JSC::regExpConstructorDollar7):
              (JSC::regExpConstructorDollar8):
              (JSC::regExpConstructorDollar9):
              (JSC::regExpConstructorInput):
              (JSC::regExpConstructorMultiline):
              (JSC::regExpConstructorLastMatch):
              (JSC::regExpConstructorLastParen):
              (JSC::regExpConstructorLeftContext):
              (JSC::regExpConstructorRightContext):
              (JSC::RegExpConstructor::put):
              (JSC::setRegExpConstructorInput):
              (JSC::setRegExpConstructorMultiline):
              (JSC::constructRegExp):
              (JSC::callRegExpConstructor):
              * runtime/RegExpConstructor.h:
              (JSC::RegExpConstructor::createStructure):
              (JSC::asRegExpConstructor):
              * runtime/RegExpMatchesArray.h:
              (JSC::RegExpMatchesArray::put):
              * runtime/RegExpObject.cpp:
              (JSC::regExpObjectGlobal):
              (JSC::regExpObjectIgnoreCase):
              (JSC::regExpObjectMultiline):
              (JSC::regExpObjectSource):
              (JSC::regExpObjectLastIndex):
              (JSC::RegExpObject::put):
              (JSC::setRegExpObjectLastIndex):
              (JSC::RegExpObject::test):
              (JSC::RegExpObject::exec):
              (JSC::callRegExpObject):
              * runtime/RegExpObject.h:
              (JSC::RegExpObject::createStructure):
              (JSC::asRegExpObject):
              * runtime/RegExpPrototype.cpp:
              (JSC::regExpProtoFuncTest):
              (JSC::regExpProtoFuncExec):
              (JSC::regExpProtoFuncCompile):
              (JSC::regExpProtoFuncToString):
              * runtime/StringConstructor.cpp:
              (JSC::stringFromCharCodeSlowCase):
              (JSC::stringFromCharCode):
              (JSC::callStringConstructor):
              * runtime/StringObject.cpp:
              (JSC::StringObject::put):
              * runtime/StringObject.h:
              (JSC::StringObject::createStructure):
              (JSC::asStringObject):
              * runtime/StringObjectThatMasqueradesAsUndefined.h:
              (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
              * runtime/StringPrototype.cpp:
              (JSC::stringProtoFuncReplace):
              (JSC::stringProtoFuncToString):
              (JSC::stringProtoFuncCharAt):
              (JSC::stringProtoFuncCharCodeAt):
              (JSC::stringProtoFuncConcat):
              (JSC::stringProtoFuncIndexOf):
              (JSC::stringProtoFuncLastIndexOf):
              (JSC::stringProtoFuncMatch):
              (JSC::stringProtoFuncSearch):
              (JSC::stringProtoFuncSlice):
              (JSC::stringProtoFuncSplit):
              (JSC::stringProtoFuncSubstr):
              (JSC::stringProtoFuncSubstring):
              (JSC::stringProtoFuncToLowerCase):
              (JSC::stringProtoFuncToUpperCase):
              (JSC::stringProtoFuncLocaleCompare):
              (JSC::stringProtoFuncBig):
              (JSC::stringProtoFuncSmall):
              (JSC::stringProtoFuncBlink):
              (JSC::stringProtoFuncBold):
              (JSC::stringProtoFuncFixed):
              (JSC::stringProtoFuncItalics):
              (JSC::stringProtoFuncStrike):
              (JSC::stringProtoFuncSub):
              (JSC::stringProtoFuncSup):
              (JSC::stringProtoFuncFontcolor):
              (JSC::stringProtoFuncFontsize):
              (JSC::stringProtoFuncAnchor):
              (JSC::stringProtoFuncLink):
              * runtime/Structure.cpp:
              (JSC::Structure::Structure):
              (JSC::Structure::changePrototypeTransition):
              (JSC::Structure::createCachedPrototypeChain):
              * runtime/Structure.h:
              (JSC::Structure::create):
              (JSC::Structure::setPrototypeWithoutTransition):
              (JSC::Structure::storedPrototype):
      
      JavaScriptGlue:
      
      2009-01-05  Gavin Barraclough  <baraclough@apple.com>
      
              Rubber Stamped by Oliver Hunt.
      
              Replace all uses of JSValue* with new wrapper class, JSValuePtr.
              See JavaScriptCore/ChangeLog for more detailed description.
      
              * JSObject.cpp:
              (nativeCallFunction):
              * JSUtils.cpp:
              (KJSValueToJSObject):
              (JSObjectKJSValue):
              (KJSValueToCFTypeInternal):
              (KJSValueToCFType):
              * JSUtils.h:
              * JSValueWrapper.cpp:
              (JSValueWrapper::JSValueWrapper):
              (JSValueWrapper::GetValue):
              (JSValueWrapper::JSObjectCopyProperty):
              (JSValueWrapper::JSObjectSetProperty):
              (JSValueWrapper::JSObjectCallFunction):
              * JSValueWrapper.h:
              * UserObjectImp.cpp:
              (UserObjectImp::callAsFunction):
              (UserObjectImp::userObjectGetter):
              (UserObjectImp::getOwnPropertySlot):
              (UserObjectImp::put):
              (UserObjectImp::toPrimitive):
              * UserObjectImp.h:
              (UserObjectImp::createStructure):
      
      WebCore:
      
      2009-01-05  Gavin Barraclough  <baraclough@apple.com>
      
              Rubber Stamped by Oliver Hunt.
      
              Replace all uses of JSValue* with new wrapper class, JSValuePtr.
              See JavaScriptCore/ChangeLog for more detailed description.
      
              * bindings/js/JSAttrCustom.cpp:
              (WebCore::JSAttr::setValue):
              * bindings/js/JSCSSRuleCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSCSSStyleDeclarationCustom.cpp:
              (WebCore::JSCSSStyleDeclaration::nameGetter):
              (WebCore::JSCSSStyleDeclaration::customPut):
              * bindings/js/JSCSSValueCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSCanvasPixelArrayCustom.h:
              (WebCore::JSCanvasPixelArray::getByIndex):
              (WebCore::JSCanvasPixelArray::indexSetter):
              * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
              (WebCore::toJS):
              (WebCore::toHTMLCanvasStyle):
              (WebCore::JSCanvasRenderingContext2D::strokeStyle):
              (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
              (WebCore::JSCanvasRenderingContext2D::fillStyle):
              (WebCore::JSCanvasRenderingContext2D::setFillStyle):
              (WebCore::JSCanvasRenderingContext2D::setFillColor):
              (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
              (WebCore::JSCanvasRenderingContext2D::strokeRect):
              (WebCore::JSCanvasRenderingContext2D::drawImage):
              (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
              (WebCore::JSCanvasRenderingContext2D::setShadow):
              (WebCore::JSCanvasRenderingContext2D::createPattern):
              (WebCore::JSCanvasRenderingContext2D::putImageData):
              (WebCore::JSCanvasRenderingContext2D::fillText):
              (WebCore::JSCanvasRenderingContext2D::strokeText):
              * bindings/js/JSClipboardCustom.cpp:
              (WebCore::JSClipboard::types):
              (WebCore::JSClipboard::clearData):
              (WebCore::JSClipboard::getData):
              (WebCore::JSClipboard::setData):
              (WebCore::JSClipboard::setDragImage):
              * bindings/js/JSConsoleCustom.cpp:
              (WebCore::JSConsole::profiles):
              * bindings/js/JSCustomPositionCallback.cpp:
              (WebCore::JSCustomPositionCallback::handleEvent):
              * bindings/js/JSCustomPositionErrorCallback.cpp:
              (WebCore::JSCustomPositionErrorCallback::handleEvent):
              * 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):
              (WebCore::toVoidCallback):
              * bindings/js/JSCustomVoidCallback.h:
              * bindings/js/JSCustomXPathNSResolver.cpp:
              (WebCore::JSCustomXPathNSResolver::create):
              (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
              * bindings/js/JSCustomXPathNSResolver.h:
              * bindings/js/JSDOMApplicationCacheCustom.cpp:
              (WebCore::JSDOMApplicationCache::add):
              (WebCore::JSDOMApplicationCache::remove):
              (WebCore::JSDOMApplicationCache::addEventListener):
              (WebCore::JSDOMApplicationCache::removeEventListener):
              * bindings/js/JSDOMBinding.cpp:
              (WebCore::jsStringOrNull):
              (WebCore::jsOwnedStringOrNull):
              (WebCore::jsStringOrUndefined):
              (WebCore::jsStringOrFalse):
              (WebCore::valueToStringWithNullCheck):
              (WebCore::valueToStringWithUndefinedOrNullCheck):
              (WebCore::reportException):
              (WebCore::reportCurrentException):
              (WebCore::setDOMException):
              (WebCore::objectToStringFunctionGetter):
              * bindings/js/JSDOMBinding.h:
              (WebCore::getDOMObjectWrapper):
              (WebCore::getDOMNodeWrapper):
              (WebCore::toJS):
              * bindings/js/JSDOMGlobalObject.cpp:
              (WebCore::JSDOMGlobalObject::findJSEventListener):
              (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
              (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
              (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
              * bindings/js/JSDOMGlobalObject.h:
              * bindings/js/JSDOMWindowBase.cpp:
              (WebCore::createWindow):
              (WebCore::showModalDialog):
              (jsDOMWindowBaseCrypto):
              (jsDOMWindowBaseEvent):
              (jsDOMWindowBaseImage):
              (jsDOMWindowBaseMessageChannel):
              (jsDOMWindowBaseOption):
              (jsDOMWindowBaseXMLHttpRequest):
              (jsDOMWindowBaseAudio):
              (jsDOMWindowBaseWorker):
              (jsDOMWindowBaseXSLTProcessor):
              (setJSDOMWindowBaseEvent):
              (setJSDOMWindowBaseAudio):
              (setJSDOMWindowBaseImage):
              (setJSDOMWindowBaseMessageChannel):
              (setJSDOMWindowBaseOption):
              (setJSDOMWindowBaseWorker):
              (setJSDOMWindowBaseXMLHttpRequest):
              (setJSDOMWindowBaseXSLTProcessor):
              (WebCore::JSDOMWindowBase::childFrameGetter):
              (WebCore::JSDOMWindowBase::indexGetter):
              (WebCore::JSDOMWindowBase::namedItemGetter):
              (WebCore::JSDOMWindowBase::getOwnPropertySlot):
              (WebCore::JSDOMWindowBase::put):
              (WebCore::JSDOMWindowBase::clear):
              (windowProtoFuncOpen):
              (windowProtoFuncShowModalDialog):
              (windowProtoFuncNotImplemented):
              (WebCore::JSDOMWindowBase::setReturnValueSlot):
              (WebCore::JSDOMWindowBase::installTimeout):
              (WebCore::toJS):
              (WebCore::toJSDOMWindow):
              * bindings/js/JSDOMWindowBase.h:
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::lookupGetter):
              (WebCore::JSDOMWindow::lookupSetter):
              (WebCore::JSDOMWindow::setLocation):
              (WebCore::JSDOMWindow::postMessage):
              (WebCore::setTimeoutOrInterval):
              (WebCore::JSDOMWindow::setTimeout):
              (WebCore::JSDOMWindow::clearTimeout):
              (WebCore::JSDOMWindow::setInterval):
              (WebCore::JSDOMWindow::clearInterval):
              (WebCore::JSDOMWindow::atob):
              (WebCore::JSDOMWindow::btoa):
              (WebCore::JSDOMWindow::addEventListener):
              (WebCore::JSDOMWindow::removeEventListener):
              (WebCore::toDOMWindow):
              (WebCore::nonCachingStaticCloseFunctionGetter):
              (WebCore::nonCachingStaticBlurFunctionGetter):
              (WebCore::nonCachingStaticFocusFunctionGetter):
              (WebCore::nonCachingStaticPostMessageFunctionGetter):
              * bindings/js/JSDOMWindowCustom.h:
              (WebCore::JSDOMWindow::customPut):
              * bindings/js/JSDOMWindowShell.cpp:
              (WebCore::JSDOMWindowShell::put):
              (WebCore::JSDOMWindowShell::putWithAttributes):
              (WebCore::JSDOMWindowShell::lookupGetter):
              (WebCore::JSDOMWindowShell::lookupSetter):
              (WebCore::toJS):
              * bindings/js/JSDOMWindowShell.h:
              (WebCore::JSDOMWindowShell::createStructure):
              * bindings/js/JSDatabaseCustom.cpp:
              (WebCore::JSDatabase::changeVersion):
              (WebCore::JSDatabase::transaction):
              * bindings/js/JSDocumentCustom.cpp:
              (WebCore::JSDocument::location):
              (WebCore::JSDocument::setLocation):
              (WebCore::toJS):
              * bindings/js/JSElementCustom.cpp:
              (WebCore::JSElement::setAttribute):
              (WebCore::JSElement::setAttributeNode):
              (WebCore::JSElement::setAttributeNS):
              (WebCore::JSElement::setAttributeNodeNS):
              (WebCore::toJSNewlyCreated):
              * bindings/js/JSEventCustom.cpp:
              (WebCore::JSEvent::clipboardData):
              (WebCore::toJS):
              * bindings/js/JSEventListener.cpp:
              (WebCore::JSAbstractEventListener::handleEvent):
              (WebCore::eventParameterName):
              (WebCore::JSLazyEventListener::parseCode):
              * bindings/js/JSEventTarget.cpp:
              (WebCore::toJS):
              * bindings/js/JSEventTarget.h:
              * bindings/js/JSEventTargetBase.h:
              * bindings/js/JSEventTargetNodeCustom.cpp:
              (WebCore::JSEventTargetNode::addEventListener):
              (WebCore::JSEventTargetNode::removeEventListener):
              * bindings/js/JSGeolocationCustom.cpp:
              (WebCore::createPositionOptions):
              (WebCore::JSGeolocation::getCurrentPosition):
              (WebCore::JSGeolocation::watchPosition):
              * bindings/js/JSHTMLAllCollection.h:
              (WebCore::JSHTMLAllCollection::createStructure):
              * bindings/js/JSHTMLAppletElementCustom.cpp:
              (WebCore::JSHTMLAppletElement::customPut):
              (WebCore::JSHTMLAppletElement::nameGetter):
              * bindings/js/JSHTMLCollectionCustom.cpp:
              (WebCore::getNamedItems):
              (WebCore::callHTMLCollection):
              (WebCore::JSHTMLCollection::nameGetter):
              (WebCore::JSHTMLCollection::item):
              (WebCore::JSHTMLCollection::namedItem):
              (WebCore::toJS):
              * bindings/js/JSHTMLDocumentCustom.cpp:
              (WebCore::JSHTMLDocument::nameGetter):
              (WebCore::JSHTMLDocument::all):
              (WebCore::JSHTMLDocument::setAll):
              (WebCore::JSHTMLDocument::open):
              (WebCore::JSHTMLDocument::write):
              (WebCore::JSHTMLDocument::writeln):
              * bindings/js/JSHTMLEmbedElementCustom.cpp:
              (WebCore::JSHTMLEmbedElement::customPut):
              (WebCore::JSHTMLEmbedElement::nameGetter):
              * bindings/js/JSHTMLFormElementCustom.cpp:
              (WebCore::JSHTMLFormElement::nameGetter):
              * bindings/js/JSHTMLFrameElementCustom.cpp:
              (WebCore::JSHTMLFrameElement::setSrc):
              (WebCore::JSHTMLFrameElement::setLocation):
              * bindings/js/JSHTMLFrameSetElementCustom.cpp:
              (WebCore::JSHTMLFrameSetElement::nameGetter):
              * bindings/js/JSHTMLIFrameElementCustom.cpp:
              (WebCore::JSHTMLIFrameElement::setSrc):
              * bindings/js/JSHTMLInputElementCustom.cpp:
              (WebCore::JSHTMLInputElement::selectionStart):
              (WebCore::JSHTMLInputElement::selectionEnd):
              * bindings/js/JSHTMLObjectElementCustom.cpp:
              (WebCore::JSHTMLObjectElement::customPut):
              (WebCore::JSHTMLObjectElement::nameGetter):
              * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
              (WebCore::JSHTMLOptionsCollection::length):
              (WebCore::JSHTMLOptionsCollection::setLength):
              (WebCore::JSHTMLOptionsCollection::indexSetter):
              (WebCore::JSHTMLOptionsCollection::add):
              (WebCore::JSHTMLOptionsCollection::remove):
              * bindings/js/JSHTMLSelectElementCustom.cpp:
              (WebCore::JSHTMLSelectElement::remove):
              (WebCore::selectIndexSetter):
              (WebCore::JSHTMLSelectElement::indexSetter):
              * bindings/js/JSHTMLSelectElementCustom.h:
              * bindings/js/JSHistoryCustom.cpp:
              (WebCore::nonCachingStaticBackFunctionGetter):
              (WebCore::nonCachingStaticForwardFunctionGetter):
              (WebCore::nonCachingStaticGoFunctionGetter):
              (WebCore::JSHistory::customPut):
              * bindings/js/JSImageDataCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSInspectedObjectWrapper.cpp:
              (WebCore::JSInspectedObjectWrapper::wrap):
              (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
              * bindings/js/JSInspectedObjectWrapper.h:
              (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
              * bindings/js/JSInspectorCallbackWrapper.cpp:
              (WebCore::JSInspectorCallbackWrapper::wrap):
              (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
              * bindings/js/JSInspectorCallbackWrapper.h:
              (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
              * bindings/js/JSJavaScriptCallFrameCustom.cpp:
              (WebCore::JSJavaScriptCallFrame::evaluate):
              (WebCore::JSJavaScriptCallFrame::thisObject):
              (WebCore::JSJavaScriptCallFrame::type):
              (WebCore::JSJavaScriptCallFrame::scopeChain):
              * bindings/js/JSLocationCustom.cpp:
              (WebCore::nonCachingStaticReplaceFunctionGetter):
              (WebCore::nonCachingStaticReloadFunctionGetter):
              (WebCore::nonCachingStaticAssignFunctionGetter):
              (WebCore::JSLocation::customPut):
              (WebCore::JSLocation::setHref):
              (WebCore::JSLocation::setProtocol):
              (WebCore::JSLocation::setHost):
              (WebCore::JSLocation::setHostname):
              (WebCore::JSLocation::setPort):
              (WebCore::JSLocation::setPathname):
              (WebCore::JSLocation::setSearch):
              (WebCore::JSLocation::setHash):
              (WebCore::JSLocation::replace):
              (WebCore::JSLocation::reload):
              (WebCore::JSLocation::assign):
              (WebCore::JSLocation::toString):
              * bindings/js/JSMessageChannelConstructor.h:
              * bindings/js/JSMessagePortCustom.cpp:
              (WebCore::JSMessagePort::startConversation):
              (WebCore::JSMessagePort::addEventListener):
              (WebCore::JSMessagePort::removeEventListener):
              * bindings/js/JSMimeTypeArrayCustom.cpp:
              (WebCore::JSMimeTypeArray::nameGetter):
              * bindings/js/JSNamedNodeMapCustom.cpp:
              (WebCore::JSNamedNodeMap::nameGetter):
              * bindings/js/JSNamedNodesCollection.cpp:
              (WebCore::JSNamedNodesCollection::lengthGetter):
              (WebCore::JSNamedNodesCollection::indexGetter):
              * bindings/js/JSNamedNodesCollection.h:
              (WebCore::JSNamedNodesCollection::createStructure):
              * bindings/js/JSNavigatorCustom.cpp:
              (WebCore::needsYouTubeQuirk):
              (WebCore::JSNavigator::appVersion):
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::JSNode::insertBefore):
              (WebCore::JSNode::replaceChild):
              (WebCore::JSNode::removeChild):
              (WebCore::JSNode::appendChild):
              (WebCore::createWrapper):
              (WebCore::toJSNewlyCreated):
              (WebCore::toJS):
              * bindings/js/JSNodeFilterCondition.cpp:
              (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
              (WebCore::JSNodeFilterCondition::acceptNode):
              * bindings/js/JSNodeFilterCondition.h:
              (WebCore::JSNodeFilterCondition::create):
              * bindings/js/JSNodeFilterCustom.cpp:
              (WebCore::JSNodeFilter::acceptNode):
              (WebCore::toNodeFilter):
              * bindings/js/JSNodeIteratorCustom.cpp:
              (WebCore::JSNodeIterator::nextNode):
              (WebCore::JSNodeIterator::previousNode):
              * bindings/js/JSNodeListCustom.cpp:
              (WebCore::callNodeList):
              (WebCore::JSNodeList::nameGetter):
              * bindings/js/JSPluginArrayCustom.cpp:
              (WebCore::JSPluginArray::nameGetter):
              * bindings/js/JSPluginCustom.cpp:
              (WebCore::JSPlugin::nameGetter):
              * bindings/js/JSPluginElementFunctions.cpp:
              (WebCore::runtimeObjectGetter):
              (WebCore::runtimeObjectPropertyGetter):
              (WebCore::runtimeObjectCustomPut):
              (WebCore::callPlugin):
              * bindings/js/JSPluginElementFunctions.h:
              * bindings/js/JSQuarantinedObjectWrapper.cpp:
              (WebCore::JSQuarantinedObjectWrapper::asWrapper):
              (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter):
              (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
              (WebCore::JSQuarantinedObjectWrapper::put):
              (WebCore::JSQuarantinedObjectWrapper::construct):
              (WebCore::JSQuarantinedObjectWrapper::hasInstance):
              (WebCore::JSQuarantinedObjectWrapper::call):
              * bindings/js/JSQuarantinedObjectWrapper.h:
              (WebCore::JSQuarantinedObjectWrapper::createStructure):
              * bindings/js/JSRGBColor.cpp:
              (WebCore::getJSRGBColor):
              (jsRGBColorRed):
              (jsRGBColorGreen):
              (jsRGBColorBlue):
              * bindings/js/JSRGBColor.h:
              (WebCore::JSRGBColor::createStructure):
              * bindings/js/JSSQLResultSetRowListCustom.cpp:
              (WebCore::JSSQLResultSetRowList::item):
              * bindings/js/JSSQLTransactionCustom.cpp:
              (WebCore::JSSQLTransaction::executeSql):
              * bindings/js/JSSVGElementInstanceCustom.cpp:
              (WebCore::JSSVGElementInstance::addEventListener):
              (WebCore::JSSVGElementInstance::removeEventListener):
              * bindings/js/JSSVGLengthCustom.cpp:
              (WebCore::JSSVGLength::value):
              (WebCore::JSSVGLength::convertToSpecifiedUnits):
              * bindings/js/JSSVGMatrixCustom.cpp:
              (WebCore::JSSVGMatrix::multiply):
              (WebCore::JSSVGMatrix::inverse):
              (WebCore::JSSVGMatrix::translate):
              (WebCore::JSSVGMatrix::scale):
              (WebCore::JSSVGMatrix::scaleNonUniform):
              (WebCore::JSSVGMatrix::rotate):
              (WebCore::JSSVGMatrix::rotateFromVector):
              (WebCore::JSSVGMatrix::flipX):
              (WebCore::JSSVGMatrix::flipY):
              (WebCore::JSSVGMatrix::skewX):
              (WebCore::JSSVGMatrix::skewY):
              * bindings/js/JSSVGPathSegCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSSVGPathSegListCustom.cpp:
              (WebCore::JSSVGPathSegList::clear):
              (WebCore::JSSVGPathSegList::initialize):
              (WebCore::JSSVGPathSegList::getItem):
              (WebCore::JSSVGPathSegList::insertItemBefore):
              (WebCore::JSSVGPathSegList::replaceItem):
              (WebCore::JSSVGPathSegList::removeItem):
              (WebCore::JSSVGPathSegList::appendItem):
              * bindings/js/JSSVGPointListCustom.cpp:
              (WebCore::finishGetter):
              (WebCore::finishSetter):
              (WebCore::finishSetterReadOnlyResult):
              (WebCore::JSSVGPointList::clear):
              (WebCore::JSSVGPointList::initialize):
              (WebCore::JSSVGPointList::getItem):
              (WebCore::JSSVGPointList::insertItemBefore):
              (WebCore::JSSVGPointList::replaceItem):
              (WebCore::JSSVGPointList::removeItem):
              (WebCore::JSSVGPointList::appendItem):
              * bindings/js/JSSVGTransformListCustom.cpp:
              (WebCore::finishGetter):
              (WebCore::finishSetter):
              (WebCore::finishSetterReadOnlyResult):
              (WebCore::JSSVGTransformList::clear):
              (WebCore::JSSVGTransformList::initialize):
              (WebCore::JSSVGTransformList::getItem):
              (WebCore::JSSVGTransformList::insertItemBefore):
              (WebCore::JSSVGTransformList::replaceItem):
              (WebCore::JSSVGTransformList::removeItem):
              (WebCore::JSSVGTransformList::appendItem):
              * bindings/js/JSStorageCustom.cpp:
              (WebCore::JSStorage::nameGetter):
              (WebCore::JSStorage::deleteProperty):
              (WebCore::JSStorage::customPut):
              * bindings/js/JSStyleSheetCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSStyleSheetListCustom.cpp:
              (WebCore::JSStyleSheetList::nameGetter):
              * bindings/js/JSTextCustom.cpp:
              (WebCore::toJSNewlyCreated):
              * bindings/js/JSTreeWalkerCustom.cpp:
              (WebCore::JSTreeWalker::parentNode):
              (WebCore::JSTreeWalker::firstChild):
              (WebCore::JSTreeWalker::lastChild):
              (WebCore::JSTreeWalker::nextSibling):
              (WebCore::JSTreeWalker::previousSibling):
              (WebCore::JSTreeWalker::previousNode):
              (WebCore::JSTreeWalker::nextNode):
              * bindings/js/JSWorkerContextBase.cpp:
              (WebCore::JSWorkerContextBase::put):
              * bindings/js/JSWorkerContextBase.h:
              * bindings/js/JSWorkerContextCustom.cpp:
              (WebCore::JSWorkerContext::self):
              (WebCore::JSWorkerContext::setSelf):
              (WebCore::JSWorkerContext::addEventListener):
              (WebCore::JSWorkerContext::removeEventListener):
              * bindings/js/JSWorkerCustom.cpp:
              (WebCore::JSWorker::addEventListener):
              (WebCore::JSWorker::removeEventListener):
              * bindings/js/JSXMLHttpRequestCustom.cpp:
              (WebCore::JSXMLHttpRequest::open):
              (WebCore::JSXMLHttpRequest::setRequestHeader):
              (WebCore::JSXMLHttpRequest::send):
              (WebCore::JSXMLHttpRequest::getResponseHeader):
              (WebCore::JSXMLHttpRequest::overrideMimeType):
              (WebCore::JSXMLHttpRequest::addEventListener):
              (WebCore::JSXMLHttpRequest::removeEventListener):
              (WebCore::JSXMLHttpRequest::responseText):
              * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
              (WebCore::JSXMLHttpRequestUpload::addEventListener):
              (WebCore::JSXMLHttpRequestUpload::removeEventListener):
              * bindings/js/JSXSLTProcessorCustom.cpp:
              (WebCore::JSXSLTProcessor::importStylesheet):
              (WebCore::JSXSLTProcessor::transformToFragment):
              (WebCore::JSXSLTProcessor::transformToDocument):
              (WebCore::JSXSLTProcessor::setParameter):
              (WebCore::JSXSLTProcessor::getParameter):
              (WebCore::JSXSLTProcessor::removeParameter):
              * bindings/js/ScheduledAction.cpp:
              (WebCore::ScheduledAction::ScheduledAction):
              (WebCore::ScheduledAction::execute):
              * bindings/js/ScheduledAction.h:
              * bindings/js/ScriptCallStack.cpp:
              (WebCore::ScriptCallStack::ScriptCallStack):
              (WebCore::ScriptCallStack::initialize):
              * bindings/js/ScriptController.cpp:
              (WebCore::ScriptController::createScriptObjectForPluginElement):
              * bindings/js/ScriptValue.cpp:
              (WebCore::ScriptValue::getString):
              (WebCore::ScriptValue::isNull):
              (WebCore::ScriptValue::isUndefined):
              * bindings/js/ScriptValue.h:
              (WebCore::ScriptValue::ScriptValue):
              (WebCore::ScriptValue::jsValue):
              * bindings/objc/WebScriptObject.mm:
              (-[WebScriptObject callWebScriptMethod:withArguments:]):
              (-[WebScriptObject evaluateWebScript:]):
              (-[WebScriptObject valueForKey:]):
              (-[WebScriptObject webScriptValueAtIndex:]):
              (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
              * bindings/objc/WebScriptObjectPrivate.h:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bridge/NP_jsobject.cpp:
              (_NPN_InvokeDefault):
              (_NPN_Invoke):
              (_NPN_Evaluate):
              (_NPN_GetProperty):
              (_NPN_HasMethod):
              (_NPN_Construct):
              * bridge/c/c_instance.cpp:
              (JSC::Bindings::CInstance::invokeMethod):
              (JSC::Bindings::CInstance::invokeDefaultMethod):
              (JSC::Bindings::CInstance::invokeConstruct):
              (JSC::Bindings::CInstance::defaultValue):
              (JSC::Bindings::CInstance::stringValue):
              (JSC::Bindings::CInstance::numberValue):
              (JSC::Bindings::CInstance::booleanValue):
              (JSC::Bindings::CInstance::valueOf):
              * bridge/c/c_instance.h:
              * bridge/c/c_runtime.cpp:
              (JSC::Bindings::CField::valueFromInstance):
              (JSC::Bindings::CField::setValueToInstance):
              * bridge/c/c_runtime.h:
              * bridge/c/c_utility.cpp:
              (JSC::Bindings::convertValueToNPVariant):
              (JSC::Bindings::convertNPVariantToValue):
              * bridge/c/c_utility.h:
              * bridge/jni/jni_instance.cpp:
              (JavaInstance::stringValue):
              (JavaInstance::numberValue):
              (JavaInstance::booleanValue):
              (JavaInstance::invokeMethod):
              (JavaInstance::defaultValue):
              (JavaInstance::valueOf):
              * bridge/jni/jni_instance.h:
              * bridge/jni/jni_jsobject.h:
              * bridge/jni/jni_jsobject.mm:
              (JavaJSObject::call):
              (JavaJSObject::eval):
              (JavaJSObject::getMember):
              (JavaJSObject::getSlot):
              (JavaJSObject::convertValueToJObject):
              (JavaJSObject::convertJObjectToValue):
              * bridge/jni/jni_objc.mm:
              (JSC::Bindings::dispatchJNICall):
              * bridge/jni/jni_runtime.cpp:
              (JavaArray::convertJObjectToArray):
              (JavaField::dispatchValueFromInstance):
              (JavaField::valueFromInstance):
              (JavaField::dispatchSetValueToInstance):
              (JavaField::setValueToInstance):
              (JavaArray::setValueAt):
              (JavaArray::valueAt):
              * bridge/jni/jni_runtime.h:
              * bridge/jni/jni_utility.cpp:
              (JSC::Bindings::convertArrayInstanceToJavaArray):
              (JSC::Bindings::convertValueToJValue):
              * bridge/jni/jni_utility.h:
              * bridge/objc/WebScriptObject.h:
              * bridge/objc/objc_class.h:
              * bridge/objc/objc_class.mm:
              (JSC::Bindings::ObjcClass::fallbackObject):
              * bridge/objc/objc_instance.h:
              * bridge/objc/objc_instance.mm:
              (ObjcInstance::invokeMethod):
              (ObjcInstance::invokeDefaultMethod):
              (ObjcInstance::setValueOfUndefinedField):
              (ObjcInstance::getValueOfUndefinedField):
              (ObjcInstance::defaultValue):
              (ObjcInstance::stringValue):
              (ObjcInstance::numberValue):
              (ObjcInstance::booleanValue):
              (ObjcInstance::valueOf):
              * bridge/objc/objc_runtime.h:
              (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
              * bridge/objc/objc_runtime.mm:
              (JSC::Bindings::ObjcField::valueFromInstance):
              (JSC::Bindings::convertValueToObjcObject):
              (JSC::Bindings::ObjcField::setValueToInstance):
              (JSC::Bindings::ObjcArray::setValueAt):
              (JSC::Bindings::ObjcArray::valueAt):
              (JSC::Bindings::ObjcFallbackObjectImp::put):
              (JSC::Bindings::callObjCFallbackObject):
              (JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
              * bridge/objc/objc_utility.h:
              * bridge/objc/objc_utility.mm:
              (JSC::Bindings::convertValueToObjcValue):
              (JSC::Bindings::convertNSStringToString):
              (JSC::Bindings::convertObjcValueToValue):
              * bridge/runtime.cpp:
              (JSC::Bindings::Instance::getValueOfField):
              (JSC::Bindings::Instance::setValueOfField):
              * bridge/runtime.h:
              (JSC::Bindings::Class::fallbackObject):
              (JSC::Bindings::Instance::getValueOfUndefinedField):
              (JSC::Bindings::Instance::setValueOfUndefinedField):
              (JSC::Bindings::Instance::invokeDefaultMethod):
              (JSC::Bindings::Instance::invokeConstruct):
              (JSC::Bindings::Instance::valueOf):
              * bridge/runtime_array.cpp:
              (JSC::RuntimeArray::lengthGetter):
              (JSC::RuntimeArray::indexGetter):
              (JSC::RuntimeArray::put):
              * bridge/runtime_array.h:
              (JSC::RuntimeArray::createStructure):
              * bridge/runtime_method.cpp:
              (JSC::RuntimeMethod::lengthGetter):
              (JSC::callRuntimeMethod):
              * bridge/runtime_method.h:
              (JSC::RuntimeMethod::createStructure):
              * bridge/runtime_object.cpp:
              (JSC::RuntimeObjectImp::fallbackObjectGetter):
              (JSC::RuntimeObjectImp::fieldGetter):
              (JSC::RuntimeObjectImp::methodGetter):
              (JSC::RuntimeObjectImp::put):
              (JSC::RuntimeObjectImp::defaultValue):
              (JSC::callRuntimeObject):
              (JSC::callRuntimeConstructor):
              * bridge/runtime_object.h:
              (JSC::RuntimeObjectImp::createStructure):
              * inspector/InspectorController.cpp:
              * inspector/JavaScriptCallFrame.cpp:
              (WebCore::JavaScriptCallFrame::evaluate):
              * inspector/JavaScriptCallFrame.h:
              * inspector/JavaScriptProfile.cpp:
              (WebCore::toJS):
              * inspector/JavaScriptProfile.h:
              * inspector/JavaScriptProfileNode.cpp:
              (WebCore::toJS):
              * inspector/JavaScriptProfileNode.h:
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::dropProtection):
      
      WebKit/mac:
      
      2009-01-05  Gavin Barraclough  <baraclough@apple.com>
      
              Rubber Stamped by Oliver Hunt.
      
              Replace all uses of JSValue* with new wrapper class, JSValuePtr.
              See JavaScriptCore/ChangeLog for more detailed description.
      
              * WebView/WebFrame.mm:
              (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
              * WebView/WebScriptDebugDelegate.mm:
              (-[WebScriptCallFrame _convertValueToObjcValue:]):
              (-[WebScriptCallFrame exception]):
              (-[WebScriptCallFrame evaluateWebScript:]):
              * WebView/WebView.mm:
              (aeDescFromJSValue):
              (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b9ad540d
    • pol@apple.com's avatar
      2009-01-06 Pierre-Olivier Latour <pol@apple.com> · 076ad926
      pol@apple.com authored
              Reviewed by Darin Adler.
      
              Added new API on AnimationController::numberOfActiveAnimations() to be used by DRT.
      
              https://bugs.webkit.org/show_bug.cgi?id=23126
      
              Test: animations/animation-controller-drt-api.html
      
              * WebCore.base.exp:
              * page/animation/AnimationController.cpp:
              (WebCore::AnimationControllerPrivate::numberOfActiveAnimations):
              (WebCore::AnimationController::numberOfActiveAnimations):
              * page/animation/AnimationController.h:
              * page/animation/CompositeAnimation.cpp:
              (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations):
              (WebCore::CompositeAnimation::numberOfActiveAnimations):
              * page/animation/CompositeAnimation.h:
      
              Exposed through WebFrame private interface the new WebCore API AnimationController::numberOfActiveAnimations() to be used by DRT.
      
              https://bugs.webkit.org/show_bug.cgi?id=23126
      
              * WebView/WebFrame.mm:
              (-[WebFrame _numberOfActiveAnimations]):
              * WebView/WebFramePrivate.h:
      
              Added new JS API numberOfActiveAnimations() that returns the number of active CSS transitions & animations.
              This effectively exposes the new AnimationController::numberOfActiveAnimations() API from WebCore.
      
              https://bugs.webkit.org/show_bug.cgi?id=23126
      
              * DumpRenderTree/LayoutTestController.cpp:
              (numberOfActiveAnimationsCallback):
              (LayoutTestController::staticFunctions):
              * DumpRenderTree/LayoutTestController.h:
              * DumpRenderTree/mac/LayoutTestControllerMac.mm:
              (LayoutTestController::numberOfActiveAnimations):
              * DumpRenderTree/win/LayoutTestControllerWin.cpp:
              (LayoutTestController::numberOfActiveAnimations):
      
              Reviewed by Darin Adler.
      
              Added layout test for new DRT API numberOfActiveAnimations().
      
              https://bugs.webkit.org/show_bug.cgi?id=23126
      
              * animations/animation-controller-drt-api-expected.txt: Added.
              * animations/animation-controller-drt-api.html: Added.
              * platform/win/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      076ad926
    • eric@webkit.org's avatar
      Reviewed by Gavin Barraclough. · f39bd282
      eric@webkit.org authored
              Upstream 3 more files to get the WebCore-Chromium build a bit further.
      
              * WebCore.scons:
              * page/chromium/AccessibilityObjectChromium.cpp: Added.
              (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
              * page/chromium/AccessibilityObjectWrapper.h: Added.
              (WebCore::AccessibilityObjectWrapper::~AccessibilityObjectWrapper):
              (WebCore::AccessibilityObjectWrapper::attached):
              (WebCore::AccessibilityObjectWrapper::accessibilityObject):
              (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
              * platform/chromium/PasteboardPrivate.h: Added.
              (WebCore::PasteboardPrivate::):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f39bd282
    • cmarrin@apple.com's avatar
      Fixed https://bugs.webkit.org/show_bug.cgi?id=22870 · 89a55e98
      cmarrin@apple.com authored
       
              I added calls beginAnimationUpdate() and endAnimationUpdate() calls
              to AnimationController. These are called by Document at the start
              and end of the recalcStyle cycle. Right now, I'm just using the 
              beginAnimationUpdate() method to reset an animation time value.
              The first time the animation time is accessed after this reset I set
              it to the currentTime. So all animations in that cycle get the same
              start time. 
      
              The test cases checked in test this, but in the case of the 'left'
              test it actually doesn't make any difference in most cases. This is
              because values are clamped to whole pixels, so the start times would 
              have to be pretty far off for the test to fail using the old
              currentTime() model. Still, under really heavy load, it's possible for
              the test to fail without these changes.
      
              The 'transform' test is another story. It animates to the full resolution
              of a floating point number, so the test fails miserably without this
              fix.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      89a55e98
    • jchaffraix@webkit.org's avatar
      2009-01-06 Julien Chaffraix <jchaffraix@webkit.org> · ae5f161d
      jchaffraix@webkit.org authored
              Reviewed by Nikolas Zimmermann.
      
              Bug 22858: Simplify make_names.pl code for avoiding multiple definitions or inclusions
              https://bugs.webkit.org/show_bug.cgi?id=22858
      
              I had introduced an awkward situation using hasCustomJSWrapper and
              sometimes boolean parameter in order to ensure JS wrapper generated once
              or header included once.
      
              Simplified the code by using a %seenTag hash to detect multiple definitions
              or inclusions and skipping it.
      
              Also cleaned up a bit make_names.pl by using more explicit names and moving
              code to where it belongs.
      
              * dom/make_names.pl:
              * html/HTMLTagNames.in: Necessary changes that were not detected by
              the previous syntax but will be required for autogenerating HTMLElementFactory.
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae5f161d
    • andersca@apple.com's avatar
      2009-01-06 Anders Carlsson <andersca@apple.com> · 4eab1d36
      andersca@apple.com authored
              Reviewed by Sam Weinig.
      
              Add a way for application to provide custom, full frame, views for certain MIME types.
              
              * Interfaces/IWebEmbeddedView.idl:
              Add loading related methods.
              
              * Interfaces/IWebViewPrivate.idl:
              Add new registerEmbeddedViewMIMEType method.
              
              * WebCoreSupport/EmbeddedWidget.cpp:
              (EmbeddedWidget::didReceiveResponse):
              (EmbeddedWidget::didReceiveData):
              (EmbeddedWidget::didFinishLoading):
              (EmbeddedWidget::didFail):
              Implement these and call the IEmbeddedView methods.
              
              * WebCoreSupport/EmbeddedWidget.h:
              Inherit from PluginManualLoader.
              
              * WebCoreSupport/WebFrameLoaderClient.cpp:
              (WebFrameLoaderClient::redirectDataToPlugin):
              Handle the case where the widget is an EnbeddedWidget.
              
              (WebFrameLoaderClient::shouldUsePluginDocument):
              Have this call WebView::shouldUseEmbeddedView.
              
              * WebView.cpp:
              (WebView::canShowMIMEType):
              Have this call WebView::shouldUseEmbeddedView.
              
              (WebView::registerEmbeddedViewMIMEType):
              Add the MIME type to the set.
              
              (WebView::shouldUseEmbeddedView):
              Given a MIME type, returns whether an embedded view should be used or not.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39665 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4eab1d36
    • andersca@apple.com's avatar
      2009-01-06 Anders Carlsson <andersca@apple.com> · 641fef90
      andersca@apple.com authored
              Reviewed by Sam Weinig.
      
              Add a way for frame loader clients to always create a PluginDocument, regardless of 
              the real document MIME type.
              
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::begin):
              (WebCore::FrameLoader::shouldUsePlugin):
              * loader/FrameLoaderClient.h:
              (WebCore::FrameLoaderClient::shouldUsePluginDocument):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      641fef90
    • dino@apple.com's avatar
      2009-01-06 Dean Jackson <dino@apple.com> · 301b3b21
      dino@apple.com authored
              Reviewed by Dave Hyatt.
      
              Extend Media Queries to cover transitions,
              animations, transform-2d and transform-3d
              http://webkit.org/specs/MediaQueriesExtensions.html
              Note that the implementation uses -webkit- prefixes
              even though the spec doesn't have them.
              https://bugs.webkit.org/show_bug.cgi?id=22494
      
              Tests: fast/media/mq-animation.html
                     fast/media/mq-transform-01.html
                     fast/media/mq-transform-02.html
                     fast/media/mq-transform-03.html
                     fast/media/mq-transform-04.html
                     fast/media/mq-transition.html
      
              * css/MediaFeatureNames.h:
              * css/MediaQueryEvaluator.cpp:
              (WebCore::animationMediaFeatureEval):
              (WebCore::transitionMediaFeatureEval):
              (WebCore::transform_2dMediaFeatureEval):
              (WebCore::transform_3dMediaFeatureEval):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      301b3b21
    • justin.garcia@apple.com's avatar
      2009-01-06 Justin Garcia <justin.garcia@apple.com> · 6ffa849c
      justin.garcia@apple.com authored
              Reviewed by Oliver Hunt.
              
              Tests for:
              <rdar://problem/4059423> DOM operations performed on editable HTML can cause a crash later during Undo (19703)
              
              A few more may able to be written after <rdar://problem/6468156> is fixed.
      
              * editing/undo/4059423-1-expected.txt: Added.
              * editing/undo/4059423-1.html: Added.
              * editing/undo/4059423-2-expected.txt: Added.
              * editing/undo/4059423-2.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39662 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6ffa849c
    • eric@webkit.org's avatar
      Reviewed by Oliver Hunt. · fd978503
      eric@webkit.org authored
              Bring the Chromium-WebCore build closer to building
              by upstreaming PlatformWidget.h add adding the JSC
              plugin bridge files to the build.
      
              * WebCore.scons:
              * platform/chromium/PlatformWidget.h: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd978503
    • oliver@apple.com's avatar
      <https://bugs.webkit.org/show_bug.cgi?id=23085> [jsfunfuzz] Over released ScopeChainNode · 5b07bf7b
      oliver@apple.com authored
      <rdar://problem/6474110>
      
      Reviewed by Cameron Zwarich
      
      So this delightful bug was caused by our unwind code using a ScopeChain to perform
      the unwind.  The ScopeChain would ref the initial top of the scope chain, then deref
      the resultant top of scope chain, which is incorrect.
      
      This patch removes the dependency on ScopeChain for the unwind, and i've filed
      <https://bugs.webkit.org/show_bug.cgi?id=23144> to look into the unintuitive
      ScopeChain behaviour.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39660 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b07bf7b
    • eric@webkit.org's avatar
      Build fix only, no review. · a617349e
      eric@webkit.org authored
              Bring the Chromium-WebCore build back closer to building
              by adding files from recent commits.
      
              * WebCore.scons:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39659 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a617349e
    • aroben@apple.com's avatar
      Hopeful Windows crash-on-launch fix · ac46db16
      aroben@apple.com authored
              * wtf/Platform.h: Force a world rebuild by touching this file.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39658 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ac46db16
    • zecke@webkit.org's avatar
      Build fix by building ByteArray.cpp as well · e69ca21c
      zecke@webkit.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39657 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e69ca21c
    • ap@webkit.org's avatar
      Reviewed by Darin Adler. · 99818114
      ap@webkit.org authored
              <rdar://problem/6474973> REGRESSION: PLT ~2% slower due to 39465 (consolidate thread data)
      
              I could not reproduce the slowdown on my PowerPC test machine, but the change should bring
              performance back.
      
              * platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Don't use AtomicallyInitializedStatic.
              Prior to r39465, it was only used for cached converters, which was necessary because the
              first access to ICU or TEC one could happen on a secondary thread, but now they are all
              initialized from ThreadGlobalData constructor.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39656 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99818114
    • treat@webkit.org's avatar
      Update the documentation to reflect when these API changes will land in · 1a84c866
      treat@webkit.org authored
      upstream Qt
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a84c866
    • dsmith@webkit.org's avatar
      2009-01-06 David Smith <catfish.man@gmail.com> · f84b39d3
      dsmith@webkit.org authored
              Reviewed by Darin Adler.
              
              https://bugs.webkit.org/show_bug.cgi?id=23129
              Devirtualize Node::childNodes().
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f84b39d3
    • zecke@webkit.org's avatar
      Speculative build fix for Gtk+ · b2e63a6e
      zecke@webkit.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39653 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b2e63a6e
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Try to fix WebIconDatabase build errors #4 · 4f9979df
      ddkilzer@apple.com authored
              * WebIconDatabase.cpp:
              (WebIconDatabase::isEnabled): Added 'WebIconDatabase::' to method
              signature.  (Another copy-paste error.)
              (WebIconDatabase::setEnabled): Ditto.
              * WebIconDatabase.h:
              (WebIconDatabase::startUpIconDatabase): Make private again.
              (WebIconDatabase::shutDownIconDatabase): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4f9979df
    • hausmann@webkit.org's avatar
      2009-01-06 Simon Hausmann <simon.hausmann@nokia.com> · f2f5f6c3
      hausmann@webkit.org authored
              Unreviewed build fix.
      
              Fix the Qt build with Qt 4.4.x, the HTTP-only cookie support was
              added in Qt 4.5.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39651 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2f5f6c3
    • ddkilzer@apple.com's avatar
      2009-01-06 Zalan Bujtas <zbujtas@gmail.com> · 42c64121
      ddkilzer@apple.com authored
              Reviewed by David Kilzer.
      
              https://bugs.webkit.org/show_bug.cgi?id=23133
              Fix SVG disabled build. Move 'pointer-events' from SVGCSSPropertyNames.in to
              CSSPropertyNames.in and move PointerEvents functions out of #if ENABLE(SVG)
      
              NOTE: Property name fixes landed as part of r39648.
      
              * css/CSSPrimitiveValueMappings.h:
              (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
              (WebCore::CSSPrimitiveValue::operator EPointerEvents):
              * css/CSSPropertyNames.in:
              * css/SVGCSSPropertyNames.in:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      42c64121
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Try to fix build errors #3 · 6fa72fef
      ddkilzer@apple.com authored
              Try to fix the following (more specific) build errors:
      
                  WebIconDatabase.cpp
                  ..\WebIconDatabase.cpp(255) : error C2248: 'WebIconDatabase::shutDownIconDatabase' : cannot access private member declared in class 'WebIconDatabase'
                          ...\webkit\win\WebIconDatabase.h(61) : see declaration of 'WebIconDatabase::shutDownIconDatabase'
                          ...\webkit\win\WebIconDatabase.h(51) : see declaration of 'WebIconDatabase'
                  ..\WebIconDatabase.cpp(255) : error C2352: 'WebIconDatabase::shutDownIconDatabase' : illegal call of non-static member function
                          ...\webkit\win\WebIconDatabase.h(61) : see declaration of 'WebIconDatabase::shutDownIconDatabase'
                  ..\WebIconDatabase.cpp(258) : error C2248: 'WebIconDatabase::startUpIconDatabase' : cannot access private member declared in class 'WebIconDatabase'
                          ...\webkit\win\WebIconDatabase.h(60) : see declaration of 'WebIconDatabase::startUpIconDatabase'
                          ...\webkit\win\WebIconDatabase.h(51) : see declaration of 'WebIconDatabase'
                  ..\WebIconDatabase.cpp(258) : error C2352: 'WebIconDatabase::startUpIconDatabase' : illegal call of non-static member function
                          ...\webkit\win\WebIconDatabase.h(60) : see declaration of 'WebIconDatabase::startUpIconDatabase'
      
              * WebIconDatabase.cpp:
              (setEnabled): Get instance of shared WebIconDatabase, then call
              startUp/shutDown methods on it.
              * WebIconDatabase.h:
              (WebIconDatabase::startUpIconDatabase): Make protected again.
              (WebIconDatabase::shutDownIconDatabase): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39649 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fa72fef
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39634): Fix build for non-SVG builds (Wx) · 6fb8c59f
      ddkilzer@apple.com authored
              * css/CSSPropertyNames.in: Added 'pointer-events'.
              * css/SVGCSSPropertyNames.in: Commented out pointer-events
              since it's now a plain CSS property.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39648 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fb8c59f
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Try to fix build errors again · 9361a771
      ddkilzer@apple.com authored
              Try to fix the following build errors:
      
                  WebIconDatabase.cpp
                  ..\WebIconDatabase.cpp(255) : error C3861: 'shutDownIconDatabase': identifier not found
                  ..\WebIconDatabase.cpp(258) : error C3861: 'startUpIconDatabase': identifier not found
      
              * WebIconDatabase.cpp:
              (setEnabled): Add class prefix to startUpIconDatabase() and
              shutDownIconDatabase().
              * WebIconDatabase.h:
              (WebIconDatabase::startUpIconDatabase): Make private again.
              (WebIconDatabase::shutDownIconDatabase): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39647 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9361a771
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Try to fix build error · 55c91bb8
      ddkilzer@apple.com authored
              Try to fix the following build errors:
      
                  WebIconDatabase.cpp
                  ..\WebIconDatabase.cpp(255) : error C3861: 'shutDownIconDatabase': identifier not found
                  ..\WebIconDatabase.cpp(258) : error C3861: 'startUpIconDatabase': identifier not found
      
              * WebIconDatabase.h:
              (WebIconDatabase::startUpIconDatabase): Make protected.
              (WebIconDatabase::shutDownIconDatabase): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39646 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55c91bb8
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Fix more silly errors · 844c7450
      ddkilzer@apple.com authored
              Fixes the following compilation errors:
      
                  WebIconDatabase.cpp
                  ..\WebIconDatabase.cpp(85) : error C2065: 'standardPrefs' : undeclared identifier
                  ..\WebIconDatabase.cpp(85) : error C2227: left of '->iconDatabaseLocation' must point to class/struct/union/generic type
                          type is ''unknown-type''
                  ..\WebIconDatabase.cpp(241) : error C2575: 'isEnabled' : only member functions and bases can be virtual
                  ..\WebIconDatabase.cpp(248) : error C2575: 'setEnabled' : only member functions and bases can be virtual
                  ..\WebIconDatabase.cpp(253) : error C3861: 'shutDownIconDatabase': identifier not found
                  ..\WebIconDatabase.cpp(256) : error C3861: 'startUpIconDatabase': identifier not found
      
              * WebIconDatabase.cpp:
              (WebIconDatabase::startUpIconDatabase): Redeclare standardPrefs
              since this was in init() but not in this method after it was
              extracted from init().
              (isEnabled): Don't use "virtual" in method implementation
              (silly copy-paste error).
              (setEnabled): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39645 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      844c7450
    • ddkilzer@apple.com's avatar
      BUILD FIX (r39641): Remove STDMETHODCALLTYPE from method declarations... · 9c8d83fe
      ddkilzer@apple.com authored
              BUILD FIX (r39641): Remove STDMETHODCALLTYPE from method declarations in IWebIconDatabase.idl
      
              * Interfaces/IWebIconDatabase.idl: Removed "STDMETHODCALLTYPE"
              from silly copy-paste error in two method declarations.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39644 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9c8d83fe
    • hausmann@webkit.org's avatar
      2009-01-06 Simon Hausmann <simon.hausmann@nokia.com> · 4dfa80fb
      hausmann@webkit.org authored
              Reviewed by Lars Knoll.
      
              Added support for HTTP-only cookies to the Qt build.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39643 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4dfa80fb
    • dsmith@webkit.org's avatar
      2009-01-05 David Smith <catfish.man@gmail.com> · 148b1714
      dsmith@webkit.org authored
              Reviewed by Oliver Hunt.
      
              https://bugs.webkit.org/show_bug.cgi?id=23084
              Avoid redundant AtomicString conversions
      
              * dom/Node.cpp: Create an AtomicString early to avoid converting twice
              (WebCore::Node::getElementsByTagNameNS):
              * dom/QualifiedName.h: Use the appropriate AtomicString constructor instead of converting from a String
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39642 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      148b1714
  2. 05 Jan, 2009 11 commits
    • ddkilzer@apple.com's avatar
      WebKit/mac: · c75c1a00
      ddkilzer@apple.com authored
      2009-01-05  David Kilzer  <ddkilzer@apple.com>
      
              Add SPI to enable, disable and check state of WebIconDatabase
      
              Reviewed by Darin Adler & Timothy Hatcher.
      
              Add -[WebIconDatabase isEnabled] and -[WebIconDatabase setEnabled:]
              SPI to make it possible to enable, disable and check the state of
              the icon database.
      
              * Misc/WebIconDatabase.mm:
              (-[WebIconDatabase init]): Extracted code into -_startUpIconDatabase.
              (-[WebIconDatabase iconForURL:withSize:cache:]): Switched to use
              -isEnabled instead of -_isEnabled.
              (-[WebIconDatabase iconURLForURL:]): Ditto.
              (-[WebIconDatabase retainIconForURL:]): Ditto.
              (-[WebIconDatabase releaseIconForURL:]): Ditto.
              (-[WebIconDatabase isEnabled]): Renamed from -_isEnabled in
              WebInternal category.
              (-[WebIconDatabase setEnabled:]): Added.  Takes care of changing
              the enabled/disabled state of the icon database.
              (-[WebIconDatabase removeAllIcons]): Switched to use -isEnabled
              instead of -_isEnabled.
              (-[WebIconDatabase _startUpIconDatabase]): Added.  Extrated from
              -init.
              (-[WebIconDatabase _shutDownIconDatabase]): Added.  Remove
              observers when the icon database is disabled.
              * Misc/WebIconDatabaseInternal.h: Added declarations for
              -_startUpIconDatabase and -_shutDownIconDatabase.
              * Misc/WebIconDatabasePrivate.h: Added declarations for
              -isEnabled and -setEnabled:.
      
      WebKit/win:
      
      2009-01-05  David Kilzer  <ddkilzer@apple.com>
      
              Add API to enable, disable and check state of WebIconDatabase
      
              Reviewed by Darin Adler & Timothy Hatcher.
      
              Add WebIconDatabase::isEnabled() and WebIconDatabase::setEnabled()
              API to make it possible to enable, disable and check the state of
              the icon database.
      
              * Interfaces/IWebIconDatabase.idl: Declared isEnabled() and
              setEnabled() methods.
              * WebIconDatabase.cpp:
              (WebIconDatabase::init): Extracted code into startUpIconDatabase().
              (WebIconDatabase::startUpIconDatabase): Added.  Extracted from
              init().
              (WebIconDatabase::shutDownIconDatabase): Added.  Method is empty
              since there is nothing to do yet on Windows.
              (isEnabled): Added.
              (setEnabled): Added.
              * WebIconDatabase.h: Added method declarations.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39641 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c75c1a00
    • simon.fraser@apple.com's avatar
      2009-01-05 Simon Fraser <simon.fraser@apple.com> · 6b8fefe6
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              https://bugs.webkit.org/show_bug.cgi?id=22985
      
              Add an assertion that clip rects are being used when painting with the same
              rootLayer that they were computed with.
      
              Fix two issues detected by the assertion:
      
              RenderLayer::updateClipRects() should not unconditionally update the clip rects
              on its parent, but stop when reaching rootLayer (just like calculateClipRects()).
      
              We need to pass the temporaryClipRects flag down through reflection painting
              to handle the case of nested reflections.
      
              Also use temporary clip rects in RenderTreeAsText, since that code does not
              reset the painting root for transformed layers, so cached clip rects will not
              match those used for painting.
      
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::RenderLayer):
              (WebCore::RenderLayer::paintLayer):
              (WebCore::RenderLayer::updateClipRects):
              (WebCore::RenderLayer::clearClipRects):
              * rendering/RenderLayer.h:
              * rendering/RenderTreeAsText.cpp:
              (WebCore::writeLayers):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39640 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b8fefe6
    • treat@webkit.org's avatar
      Fix the Qt build · 20965f5f
      treat@webkit.org authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20965f5f
    • mrowe@apple.com's avatar
      Fix the build some more. · 56aefe06
      mrowe@apple.com authored
      * platform/graphics/cairo/AffineTransformCairo.cpp:
      (WebCore::TransformationMatrix::TransformationMatrix):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56aefe06
    • oliver@apple.com's avatar
      Fix gtk build · b6b56093
      oliver@apple.com authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6b56093
    • beidson@apple.com's avatar
      2009-01-05 Brady Eidson <beidson@apple.com> · 24bae5dd
      beidson@apple.com authored
              Reviewed by Jon Honeycutt
      
              Expose setting the last-visit-was-failure flag on a history items in preparation for <rdar://problem/6173319>
      
              * History/WebHistoryItem.mm:
              (-[WebHistoryItem _setLastVisitWasFailure:]):
              * History/WebHistoryItemPrivate.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39636 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24bae5dd
    • dino@apple.com's avatar
      2009-01-05 Dean Jackson <dino@apple.com> · 0cf2dc9d
      dino@apple.com authored
              Reviewed by Darin Adler.
      
              Rename AffineTransform to TransformationMatrix in
              preparation for future enhancements (non-affine matrices)
      
              https://bugs.webkit.org/show_bug.cgi?id=22943
      
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.scons:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * platform/graphics/transforms/AffineTransform.cpp: Removed.
              * platform/graphics/transforms/AffineTransform.h: Removed.
              * platform/graphics/transforms/TransformationMatrix.cpp: Copied from WebCore/platform/graphics/transforms/AffineTransform.cpp.
              * platform/graphics/transforms/TransformationMatrix.h: Copied from WebCore/platform/graphics/transforms/AffineTransform.h.
              * lots of other files with s/AffineTransform/TransformationMatrix/g
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cf2dc9d
    • dino@apple.com's avatar
      2008-01-05 Dean Jackson <dino@apple.com> · 563bd1f6
      dino@apple.com authored
              Reviewed by David Hyatt.
      
              Implement 'pointer-events' for HTML content. This involved
              adding a new value 'auto' which behaves as 'visiblePainted'
              in SVG content.
      
              Moved the property out of the SVG CSS code and into
              the general CSS (both parsing and RenderStyle).
      
              Changes to the hit testing functionality of the Render tree,
              specifically the nodeAtPoint methods. Where they used to
              test for visibility, they now use a helper function defined
              on base classes (RenderObject and InlineBox) that checks both
              visibility and pointer-events.
      
              https://bugs.webkit.org/show_bug.cgi?id=11395
      
              Tests: fast/events/pointer-events-2.html
                     fast/events/pointer-events.html
      
              * css/CSSComputedStyleDeclaration.cpp:
              (WebCore::):
              (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseValue):
              * css/CSSPrimitiveValueMappings.h:
              (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
              (WebCore::CSSPrimitiveValue::operator EPointerEvents):
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::applyProperty):
              * css/SVGCSSComputedStyleDeclaration.cpp:
              (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
              * css/SVGCSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::applySVGProperty):
              * manual-tests/pointer-events.html: Added.
              * rendering/EllipsisBox.cpp:
              (WebCore::EllipsisBox::nodeAtPoint):
              * rendering/InlineBox.h:
              (WebCore::InlineBox::visibleToHitTesting):
              * rendering/InlineFlowBox.cpp:
              (WebCore::InlineFlowBox::nodeAtPoint):
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::nodeAtPoint):
              * rendering/PointerEventsHitRules.cpp:
              (WebCore::PointerEventsHitRules::PointerEventsHitRules):
              * rendering/PointerEventsHitRules.h:
              (WebCore::PointerEventsHitRules::):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::nodeAtPoint):
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::nodeAtPoint):
              * rendering/RenderObject.h:
              (WebCore::RenderObject::visibleToHitTesting):
              * rendering/RenderPath.cpp:
              (WebCore::RenderPath::nodeAtPoint):
              * rendering/RenderSVGImage.cpp:
              (WebCore::RenderSVGImage::nodeAtPoint):
              * rendering/RenderSVGText.cpp:
              (WebCore::RenderSVGText::nodeAtPoint):
              * rendering/RootInlineBox.cpp:
              (WebCore::RootInlineBox::nodeAtPoint):
              * rendering/TextControlInnerElements.cpp:
              (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
              * rendering/style/RenderStyle.h:
              (WebCore::):
              (WebCore::InheritedFlags::setBitDefaults):
              (WebCore::InheritedFlags::pointerEvents):
              (WebCore::InheritedFlags::setPointerEvents):
              (WebCore::InheritedFlags::initialPointerEvents):
              * rendering/style/RenderStyleConstants.h:
              (WebCore::):
              * rendering/style/SVGRenderStyle.h:
              (WebCore::SVGRenderStyle::InheritedFlags::operator==):
              (WebCore::SVGRenderStyle::setBitDefaults):
              * rendering/style/SVGRenderStyleDefs.h:
              * css/CSSValueKeywords.in:
              * css/SVGCSSValueKeywords.in:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39634 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      563bd1f6
    • alice.liu@apple.com's avatar
      Build fix from 39625 · 88c83c2e
      alice.liu@apple.com authored
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      88c83c2e
    • oliver@apple.com's avatar
      Fix Wx build. · 9b6f3e7a
      oliver@apple.com authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b6f3e7a
    • alice.liu@apple.com's avatar
      2009-01-05 Oliver Hunt <oliver@apple.com> · 83ee2855
      alice.liu@apple.com authored
              Windows build fixes
      
              Rubber-stamped by Alice Liu.
      
              * interpreter/Interpreter.cpp:
              (JSC::Interpreter::Interpreter):
              * runtime/ByteArray.cpp:
              (JSC::ByteArray::create):
              * runtime/ByteArray.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83ee2855