diff options
Diffstat (limited to 'WebCore/bindings/js/JSInspectorBackendCustom.cpp')
-rw-r--r-- | WebCore/bindings/js/JSInspectorBackendCustom.cpp | 185 |
1 files changed, 11 insertions, 174 deletions
diff --git a/WebCore/bindings/js/JSInspectorBackendCustom.cpp b/WebCore/bindings/js/JSInspectorBackendCustom.cpp index 30e6dc2..b2eb2d1 100644 --- a/WebCore/bindings/js/JSInspectorBackendCustom.cpp +++ b/WebCore/bindings/js/JSInspectorBackendCustom.cpp @@ -2,7 +2,6 @@ * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com> * Copyright (C) 2009 Google Inc. All rights reserved. - * Copyright (C) 2009 Joseph Pecoraro * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are @@ -35,8 +34,6 @@ #include "JSInspectorBackend.h" #include "Console.h" -#include "Cookie.h" -#include "CookieJar.h" #if ENABLE(DATABASE) #include "Database.h" #include "JSDatabase.h" @@ -54,10 +51,6 @@ #include "JSRange.h" #include "Node.h" #include "Page.h" -#if ENABLE(DOM_STORAGE) -#include "Storage.h" -#include "JSStorage.h" -#endif #include "TextIterator.h" #include "VisiblePosition.h" #include <runtime/JSArray.h> @@ -77,12 +70,21 @@ using namespace JSC; namespace WebCore { -JSValue JSInspectorBackend::highlightDOMNode(JSC::ExecState* exec, const JSC::ArgList& args) +JSValue JSInspectorBackend::highlightDOMNode(JSC::ExecState*, const JSC::ArgList& args) { if (args.size() < 1) return jsUndefined(); - impl()->highlight(args.at(0).toInt32(exec)); + JSQuarantinedObjectWrapper* wrapper = JSQuarantinedObjectWrapper::asWrapper(args.at(0)); + if (!wrapper) + return jsUndefined(); + + Node* node = toNode(wrapper->unwrappedObject()); + if (!node) + return jsUndefined(); + + impl()->highlight(node); + return jsUndefined(); } @@ -156,68 +158,6 @@ JSValue JSInspectorBackend::inspectedWindow(ExecState*, const ArgList&) return JSInspectedObjectWrapper::wrap(inspectedWindow->globalExec(), inspectedWindow); } -JSValue JSInspectorBackend::cookies(ExecState* exec, const ArgList&) -{ - InspectorController* ic = impl()->inspectorController(); - if (!ic) - return jsUndefined(); - - Document* document = ic->inspectedPage()->mainFrame()->document(); - Vector<Cookie> cookies; - bool isImplemented = getRawCookies(document, document->cookieURL(), cookies); - - if (!isImplemented) - return jsUndefined(); - - MarkedArgumentBuffer result; - Identifier nameIdentifier(exec, "name"); - Identifier valueIdentifier(exec, "value"); - Identifier domainIdentifier(exec, "domain"); - Identifier pathIdentifier(exec, "path"); - Identifier expiresIdentifier(exec, "expires"); - Identifier sizeIdentifier(exec, "size"); - Identifier httpOnlyIdentifier(exec, "httpOnly"); - Identifier secureIdentifier(exec, "secure"); - Identifier sessionIdentifier(exec, "session"); - - unsigned length = cookies.size(); - for (unsigned i = 0; i < length; ++i) { - const Cookie& cookie = cookies[i]; - JSObject* cookieObject = constructEmptyObject(exec); - cookieObject->putDirect(nameIdentifier, jsString(exec, cookie.name)); - cookieObject->putDirect(valueIdentifier, jsString(exec, cookie.value)); - cookieObject->putDirect(domainIdentifier, jsString(exec, cookie.domain)); - cookieObject->putDirect(pathIdentifier, jsString(exec, cookie.path)); - cookieObject->putDirect(expiresIdentifier, jsNumber(exec, cookie.expires)); - cookieObject->putDirect(sizeIdentifier, jsNumber(exec, cookie.name.length() + cookie.value.length())); - cookieObject->putDirect(httpOnlyIdentifier, jsBoolean(cookie.httpOnly)); - cookieObject->putDirect(secureIdentifier, jsBoolean(cookie.secure)); - cookieObject->putDirect(sessionIdentifier, jsBoolean(cookie.session)); - result.append(cookieObject); - } - - return constructArray(exec, result); -} - -JSValue JSInspectorBackend::deleteCookie(ExecState* exec, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - InspectorController* ic = impl()->inspectorController(); - if (!ic) - return jsUndefined(); - - String cookieName = args.at(0).toString(exec); - if (exec->hadException()) - return jsUndefined(); - - Document* document = ic->inspectedPage()->mainFrame()->document(); - WebCore::deleteCookie(document, document->cookieURL(), cookieName); - - return jsUndefined(); -} - JSValue JSInspectorBackend::setting(ExecState* exec, const ArgList& args) { if (args.size() < 1) @@ -340,107 +280,4 @@ JSValue JSInspectorBackend::profiles(JSC::ExecState* exec, const JSC::ArgList&) #endif -JSValue JSInspectorBackend::nodeForId(ExecState* exec, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - Node* node = impl()->nodeForId(args.at(0).toInt32(exec)); - if (!node) - return jsUndefined(); - - InspectorController* ic = impl()->inspectorController(); - if (!ic) - return jsUndefined(); - - JSLock lock(SilenceAssertionsOnly); - JSDOMWindow* inspectedWindow = toJSDOMWindow(ic->inspectedPage()->mainFrame()); - return JSInspectedObjectWrapper::wrap(inspectedWindow->globalExec(), toJS(exec, deprecatedGlobalObjectForPrototype(inspectedWindow->globalExec()), node)); -} - -JSValue JSInspectorBackend::idForNode(ExecState* exec, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - JSQuarantinedObjectWrapper* wrapper = JSQuarantinedObjectWrapper::asWrapper(args.at(0)); - if (!wrapper) - return jsUndefined(); - - Node* node = toNode(wrapper->unwrappedObject()); - if (node) - return jsNumber(exec, impl()->idForNode(node)); - return jsUndefined(); -} - -JSValue JSInspectorBackend::wrapObject(ExecState*, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - return impl()->wrapObject(ScriptValue(args.at(0))).jsValue(); -} - -JSValue JSInspectorBackend::unwrapObject(ExecState* exec, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - return impl()->unwrapObject(args.at(0).toString(exec)).jsValue(); -} - -JSValue JSInspectorBackend::pushNodePathToFrontend(ExecState* exec, const ArgList& args) -{ - if (args.size() < 2) - return jsUndefined(); - - JSQuarantinedObjectWrapper* wrapper = JSQuarantinedObjectWrapper::asWrapper(args.at(0)); - if (!wrapper) - return jsUndefined(); - - Node* node = toNode(wrapper->unwrappedObject()); - if (!node) - return jsUndefined(); - - bool selectInUI = args.at(1).toBoolean(exec); - return jsNumber(exec, impl()->pushNodePathToFrontend(node, selectInUI)); -} - -#if ENABLE(DATABASE) -JSValue JSInspectorBackend::selectDatabase(ExecState*, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - - JSQuarantinedObjectWrapper* wrapper = JSQuarantinedObjectWrapper::asWrapper(args.at(0)); - if (!wrapper) - return jsUndefined(); - - Database* database = toDatabase(wrapper->unwrappedObject()); - if (database) - impl()->selectDatabase(database); - return jsUndefined(); -} -#endif - -#if ENABLE(DOM_STORAGE) -JSValue JSInspectorBackend::selectDOMStorage(ExecState*, const ArgList& args) -{ - if (args.size() < 1) - return jsUndefined(); - InspectorController* ic = impl()->inspectorController(); - if (!ic) - return jsUndefined(); - - JSQuarantinedObjectWrapper* wrapper = JSQuarantinedObjectWrapper::asWrapper(args.at(0)); - if (!wrapper) - return jsUndefined(); - - Storage* storage = toStorage(wrapper->unwrappedObject()); - if (storage) - impl()->selectDOMStorage(storage); - return jsUndefined(); -} -#endif - } // namespace WebCore |