EncodedJSValue JSC_HOST_CALL jsDOMApplicationCachePrototypeFunctionRemoveEventListener(ExecState* exec) { JSValue thisValue = exec->hostThisValue(); if (!thisValue.inherits(&JSDOMApplicationCache::s_info)) return throwVMTypeError(exec); JSDOMApplicationCache* castedThis = static_cast<JSDOMApplicationCache*>(asObject(thisValue)); ASSERT_GC_OBJECT_INHERITS(castedThis, &JSDOMApplicationCache::s_info); DOMApplicationCache* imp = static_cast<DOMApplicationCache*>(castedThis->impl()); if (exec->argumentCount() < 2) return throwVMError(exec, createTypeError(exec, "Not enough arguments")); JSValue listener = exec->argument(1); if (!listener.isObject()) return JSValue::encode(jsUndefined()); imp->removeEventListener(ustringToAtomicString(exec->argument(0).toString(exec)), JSEventListener::create(asObject(listener), castedThis, false, currentWorld(exec)).get(), exec->argument(2).toBoolean(exec)); return JSValue::encode(jsUndefined()); }
JSValue JSAbstractWorker::removeEventListener(ExecState* exec, const ArgList& args) { JSValue listener = args.at(1); if (!listener.isObject()) return jsUndefined(); #ifdef WKC_FIX_EVENT_HANDLER_REMOVAL // webkit.org trunk r54400 impl()->removeEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), this, false, currentWorld(exec)).get(), args.at(2).toBoolean(exec)); #else impl()->removeEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), false, currentWorld(exec)).get(), args.at(2).toBoolean(exec)); #endif return jsUndefined(); }
JSValue JSDOMWindow::removeEventListener(ExecState* exec) { Frame* frame = impl()->frame(); if (!frame) return jsUndefined(); JSValue listener = exec->argument(1); if (!listener.isObject()) return jsUndefined(); impl()->removeEventListener(ustringToAtomicString(exec->argument(0).toString(exec)->value(exec)), JSEventListener::create(asObject(listener), this, false, currentWorld(exec)).get(), exec->argument(2).toBoolean(exec)); return jsUndefined(); }
JSValue JSXMLHttpRequest::removeEventListener(ExecState* exec, const ArgList& args) { JSValue listener = args.at(1); if (!listener.isObject()) return jsUndefined(); impl()->removeEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), this, false, currentWorld(exec)).get(), args.at(2).toBoolean(exec)); return jsUndefined(); }
EncodedJSValue JSC_HOST_CALL jsTestEventTargetPrototypeFunctionRemoveEventListener(ExecState* exec) { JSValue thisValue = exec->hostThisValue(); if (!thisValue.inherits(&JSTestEventTarget::s_info)) return throwVMTypeError(exec); JSTestEventTarget* castedThis = jsCast<JSTestEventTarget*>(asObject(thisValue)); ASSERT_GC_OBJECT_INHERITS(castedThis, &JSTestEventTarget::s_info); TestEventTarget* impl = static_cast<TestEventTarget*>(castedThis->impl()); JSValue listener = exec->argument(1); if (!listener.isObject()) return JSValue::encode(jsUndefined()); impl->removeEventListener(exec->argument(0).toString(exec)->value(exec), JSEventListener::create(asObject(listener), castedThis, false, currentWorld(exec)).get(), exec->argument(2).toBoolean(exec)); return JSValue::encode(jsUndefined()); }
bool ScriptDebugServer::isContentScript(ExecState* exec) { return currentWorld(exec) != mainThreadNormalWorld(); }
JSValue toJS(ExecState* exec, Frame* frame) { if (!frame) return jsNull(); return frame->script()->windowShell(currentWorld(exec)); }
JSDOMGlobalObject* toJSDOMGlobalObject(Document* document, JSC::ExecState* exec) { return toJSDOMWindow(document->frame(), currentWorld(exec)); }
static bool isContentScript(ExecState* exec) { return currentWorld(exec) != mainThreadNormalWorld(); }
JSValue jsStringSlowCase(ExecState* exec, JSStringCache& stringCache, StringImpl* stringImpl) { JSString* wrapper = jsString(exec, UString(stringImpl)); stringCache.add(stringImpl, Weak<JSString>(exec->globalData(), wrapper, currentWorld(exec)->stringWrapperOwner(), stringImpl)); return wrapper; }
JSValue JSAbstractWorker::addEventListener(ExecState* exec, const ArgList& args) { JSValue listener = args.at(1); if (!listener.isObject()) return jsUndefined(); impl()->addEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), this, false, currentWorld(exec)), args.at(2).toBoolean(exec)); return jsUndefined(); }