diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2008-12-17 18:05:15 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2008-12-17 18:05:15 -0800 |
commit | 1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353 (patch) | |
tree | 4457a7306ea5acb43fe05bfe0973b1f7faf97ba2 /WebKitTools/Drosera | |
parent | 9364f22aed35e1a1e9d07c121510f80be3ab0502 (diff) | |
download | external_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.zip external_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.tar.gz external_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.tar.bz2 |
Code drop from //branches/cupcake/...@124589
Diffstat (limited to 'WebKitTools/Drosera')
99 files changed, 0 insertions, 7619 deletions
diff --git a/WebKitTools/Drosera/DebuggerDocument.cpp b/WebKitTools/Drosera/DebuggerDocument.cpp deleted file mode 100644 index f5dbf87..0000000 --- a/WebKitTools/Drosera/DebuggerDocument.cpp +++ /dev/null @@ -1,364 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "config.h" -#include "DebuggerDocument.h" - -#include "ServerConnection.h" - -#include <JavaScriptCore/JSContextRef.h> -#include <JavaScriptCore/JSRetainPtr.h> -#include <JavaScriptCore/JSStringRefCF.h> -#include <JavaScriptCore/RetainPtr.h> - -DebuggerDocument::DebuggerDocument(ServerConnection* serverConn) - : m_server(serverConn) -{ - ASSERT(m_server); -} - -//-- Callbacks - -JSValueRef DebuggerDocument::breakpointEditorHTMLCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/) -{ - RetainPtr<CFURLRef> htmlURLRef(AdoptCF, ::CFBundleCopyResourceURL(::CFBundleGetBundleWithIdentifier(CFSTR("org.webkit.drosera")), CFSTR("breakpointEditor"), CFSTR("html"), 0)); - if (!htmlURLRef) - return JSValueMakeUndefined(context); - - // FIXME: I'm open to a better way to do this. We convert from UInt8 to CFString to JSString (3 string types!) - RetainPtr<CFReadStreamRef> readStreamRef(AdoptCF, CFReadStreamCreateWithFile(0, htmlURLRef.get())); - CFReadStreamRef readStream = readStreamRef.get(); - - if (!CFReadStreamOpen(readStream)) - return JSValueMakeUndefined(context); - - // Large enough for current BreakPointEditor.html but won't need to be changed if that file changes - // because we loop over the entire file and read it in bufferLength pieces at a time - const CFIndex bufferLength = 740; - UInt8 buffer[bufferLength]; - Vector<UInt8, bufferLength> charBuffer; - CFIndex readResult = bufferLength; - while (readResult == bufferLength) { - readResult = CFReadStreamRead(readStream, buffer, bufferLength); - - // Error condition (-1) will not copy any data - for (int i = 0; i < readResult; i++) - charBuffer.append(buffer[i]); - } - - CFReadStreamClose(readStream); - if (readResult == -1) - return JSValueMakeUndefined(context); - - // FIXME: Is there a way to determine the encoding? - RetainPtr<CFStringRef> fileContents(AdoptCF, CFStringCreateWithBytes(0, charBuffer.data(), charBuffer.size(), kCFStringEncodingUTF8, true)); - JSRetainPtr<JSStringRef> fileContentsJS(Adopt, JSStringCreateWithCFString(fileContents.get())); - JSValueRef ret = JSValueMakeString(context, fileContentsJS.get()); - - return ret; -} - -JSValueRef DebuggerDocument::pauseCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - - debuggerDocument->platformPause(); - return JSValueMakeUndefined(context); -} - -JSValueRef DebuggerDocument::resumeCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - debuggerDocument->platformResume(); - return JSValueMakeUndefined(context); -} - -JSValueRef DebuggerDocument::stepIntoCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - debuggerDocument->platformStepInto(); - return JSValueMakeUndefined(context); -} - -JSValueRef DebuggerDocument::evaluateScriptCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - if (argumentCount < 2) - return JSValueMakeUndefined(context); - - if (!JSValueIsNumber(context, arguments[1])) - return JSValueMakeUndefined(context); - - double callFrame = JSValueToNumber(context, arguments[1], exception); - ASSERT(!*exception); - - JSRetainPtr<JSStringRef> script(Adopt, JSValueToStringCopy(context, arguments[0], exception)); - ASSERT(!*exception); - - JSValueRef ret = debuggerDocument->platformEvaluateScript(context, script.get(), (int)callFrame); - - return ret; -} - -JSValueRef DebuggerDocument::currentFunctionStackCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* exception) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - Vector<JSValueRef> stack; - debuggerDocument->getPlatformCurrentFunctionStack(context, stack); - return DebuggerDocument::toJSArray(context, stack, exception); -} - -JSValueRef DebuggerDocument::localScopeVariableNamesForCallFrameCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - if (argumentCount < 1) - return JSValueMakeUndefined(context); - - if (!JSValueIsNumber(context, arguments[0])) - return JSValueMakeUndefined(context); - - double callFrame = JSValueToNumber(context, arguments[0], exception); - ASSERT(!*exception); - - // Get the variable names - Vector<JSValueRef> localVariableNames; - - debuggerDocument->getPlatformLocalScopeVariableNamesForCallFrame(context, static_cast<int>(callFrame), localVariableNames); - return DebuggerDocument::toJSArray(context, localVariableNames, exception); -} - -JSValueRef DebuggerDocument::valueForScopeVariableNamedCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) -{ - DebuggerDocument* debuggerDocument = reinterpret_cast<DebuggerDocument*>(JSObjectGetPrivate(thisObject)); - - if (argumentCount < 2) - return JSValueMakeUndefined(context); - - if (!JSValueIsString(context, arguments[0])) - return JSValueMakeUndefined(context); - - JSRetainPtr<JSStringRef> key(Adopt, JSValueToStringCopy(context, arguments[0], exception)); - ASSERT(!*exception); - - if (!JSValueIsNumber(context, arguments[1])) - return JSValueMakeUndefined(context); - - double callFrame = JSValueToNumber(context, arguments[1], exception); - ASSERT(!*exception); - - return debuggerDocument->platformValueForScopeVariableNamed(context, key.get(), (int)callFrame); -} - -JSValueRef DebuggerDocument::logCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) -{ - if (argumentCount < 1) - return JSValueMakeUndefined(context); - - if (!JSValueIsString(context, arguments[0])) - return JSValueMakeUndefined(context); - - JSRetainPtr<JSStringRef> msg(Adopt, JSValueToStringCopy(context, arguments[0], exception)); - ASSERT(!*exception); - - DebuggerDocument::platformLog(msg.get()); - return JSValueMakeUndefined(context); -} - -//-- These are the calls into the JS. --// - -bool DebuggerDocument::isPaused(JSContextRef context) const -{ - JSObjectRef globalObject = JSContextGetGlobalObject(context); - JSRetainPtr<JSStringRef> string(Adopt, JSStringCreateWithUTF8CString("isPaused")); - JSValueRef objectProperty = JSObjectGetProperty(context, globalObject, string.get(), 0); - return JSValueToBoolean(context, objectProperty); -} - -void DebuggerDocument::updateFileSource(JSContextRef context, JSStringRef documentSource, JSStringRef url) -{ - JSValueRef documentSourceValue = JSValueMakeString(context, documentSource); - JSValueRef urlValue = JSValueMakeString(context, url); - JSValueRef forceValue = JSValueMakeBoolean(context, true); - - JSValueRef arguments[] = { documentSourceValue, urlValue, forceValue }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "updateFileSource", argumentsSize, arguments); -} - -void DebuggerDocument::didParseScript(JSContextRef context, JSStringRef source, JSStringRef documentSource, JSStringRef url, JSValueRef sourceId, JSValueRef baseLine) -{ - JSValueRef sourceValue = JSValueMakeString(context, source); - JSValueRef documentSourceValue = JSValueMakeString(context, documentSource); - JSValueRef urlValue = JSValueMakeString(context, url); - - JSValueRef arguments[] = { sourceValue, documentSourceValue, urlValue, sourceId, baseLine }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "didParseScript", argumentsSize, arguments); -} - -void DebuggerDocument::willExecuteStatement(JSContextRef context, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception) -{ - JSValueRef arguments[] = { sourceId, lineno }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "willExecuteStatement", argumentsSize, arguments, exception); - if (exception && *exception) - logException(context, *exception); -} - -void DebuggerDocument::didEnterCallFrame(JSContextRef context, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception) -{ - JSValueRef arguments[] = { sourceId, lineno }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "didEnterCallFrame", argumentsSize, arguments, exception); - if (exception && *exception) - logException(context, *exception); -} - -void DebuggerDocument::willLeaveCallFrame(JSContextRef context, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception) -{ - JSValueRef arguments[] = { sourceId, lineno }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "willLeaveCallFrame", argumentsSize, arguments, exception); - if (exception && *exception) - logException(context, *exception); -} - -void DebuggerDocument::exceptionWasRaised(JSContextRef context, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception) -{ - JSValueRef arguments[] = { sourceId, lineno }; - int argumentsSize = sizeof(arguments)/sizeof(arguments[0]); - - DebuggerDocument::callGlobalFunction(context, "exceptionWasRaised", argumentsSize, arguments, exception); -} - -void DebuggerDocument::windowScriptObjectAvailable(JSContextRef context, JSObjectRef windowObject, JSValueRef* exception) -{ - JSRetainPtr<JSStringRef> droseraStr(Adopt, JSStringCreateWithUTF8CString("DebuggerDocument")); - JSValueRef droseraObject = JSObjectMake(context, getDroseraJSClass(), this); - - JSObjectSetProperty(context, windowObject, droseraStr.get(), droseraObject, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete, exception); - if (exception && *exception) - logException(context, *exception); -} - -JSValueRef DebuggerDocument::toJSArray(JSContextRef context, Vector<JSValueRef>& vectorValues, JSValueRef* exception) -{ - JSObjectRef globalObject = JSContextGetGlobalObject(context); - JSRetainPtr<JSStringRef> constructorString(Adopt, JSStringCreateWithUTF8CString("Array")); - JSValueRef constructorProperty = JSObjectGetProperty(context, globalObject, constructorString.get(), exception); - ASSERT(!*exception); - - JSObjectRef arrayConstructor = JSValueToObject(context, constructorProperty, exception); - ASSERT(!*exception); - - JSObjectRef array = JSObjectCallAsConstructor(context, arrayConstructor, 0, 0, exception); - ASSERT(!*exception); - - JSRetainPtr<JSStringRef> pushString(Adopt, JSStringCreateWithUTF8CString("push")); - JSValueRef pushValue = JSObjectGetProperty(context, array, pushString.get(), exception); - ASSERT(!*exception); - - JSObjectRef push = JSValueToObject(context, pushValue, exception); - ASSERT(!*exception); - - for (Vector<JSValueRef>::iterator it = vectorValues.begin(); it != vectorValues.end(); ++it) { - JSObjectCallAsFunction(context, push, array, 1, it, exception); - ASSERT(!*exception); - } - - return array; -} - -// Private -JSValueRef DebuggerDocument::callGlobalFunction(JSContextRef context, const char* functionName, int argumentCount, JSValueRef arguments[], JSValueRef* exception) -{ - JSObjectRef globalObject = JSContextGetGlobalObject(context); - return callFunctionOnObject(context, globalObject, functionName, argumentCount, arguments, exception); -} - -JSValueRef DebuggerDocument::callFunctionOnObject(JSContextRef context, JSObjectRef object, const char* functionName, int argumentCount, JSValueRef arguments[], JSValueRef* exception) -{ - JSRetainPtr<JSStringRef> string(Adopt, JSStringCreateWithUTF8CString(functionName)); - JSValueRef objectProperty = JSObjectGetProperty(context, object, string.get(), exception); - - JSObjectRef function = JSValueToObject(context, objectProperty, exception); - ASSERT(JSObjectIsFunction(context, function)); - - JSValueRef returnValue = JSObjectCallAsFunction(context, function, 0, argumentCount, arguments, exception); - if (exception && *exception) - logException(context, *exception); - - return returnValue; -} - -JSClassRef DebuggerDocument::getDroseraJSClass() -{ - static JSClassRef droseraClass = 0; - - if (!droseraClass) { - JSClassDefinition classDefinition = {0}; - classDefinition.staticFunctions = DebuggerDocument::staticFunctions(); - - droseraClass = JSClassCreate(&classDefinition); - } - - return droseraClass; -} - -JSStaticFunction* DebuggerDocument::staticFunctions() -{ - static JSStaticFunction staticFunctions[] = { - { "breakpointEditorHTML", DebuggerDocument::breakpointEditorHTMLCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "currentFunctionStack", DebuggerDocument::currentFunctionStackCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "evaluateScript", DebuggerDocument::evaluateScriptCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "localScopeVariableNamesForCallFrame", DebuggerDocument::localScopeVariableNamesForCallFrameCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "pause", DebuggerDocument::pauseCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "resume", DebuggerDocument::resumeCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "stepInto", DebuggerDocument::stepIntoCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "valueForScopeVariableNamed", DebuggerDocument::valueForScopeVariableNamedCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { "log", DebuggerDocument::logCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, - { 0, 0, 0 } - }; - - return staticFunctions; -} - -void DebuggerDocument::logException(JSContextRef context, JSValueRef exception) -{ - if (!exception) - return; - - JSRetainPtr<JSStringRef> msg(Adopt, JSValueToStringCopy(context, exception, 0)); - DebuggerDocument::platformLog(msg.get()); -} - diff --git a/WebKitTools/Drosera/DebuggerDocument.h b/WebKitTools/Drosera/DebuggerDocument.h deleted file mode 100644 index 7043ba1..0000000 --- a/WebKitTools/Drosera/DebuggerDocument.h +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef DebuggerDocument_H -#define DebuggerDocument_H - -#pragma warning(push) -#pragma warning(disable: 4510 4512 4610) -#include <JavaScriptCore/JSObjectRef.h> -#pragma warning(pop) - -#include <JavaScriptCore/Vector.h> - -// Forward Declarations -#if PLATFORM(MAC) -#include <JavaScriptCore/RetainPtr.h> -@class ServerConnection; -typedef RetainPtr<ServerConnection> ServerConnectionRef; -#else if PLATFORM(WIN) -#include <wtf/OwnPtr.h> -class ServerConnection; -typedef OwnPtr<ServerConnection> ServerConnectionRef; -#endif - -typedef struct OpaqueJSString* JSStringRef; -typedef struct OpaqueJSValue* JSObjectRef; - -class DebuggerDocument { -public: - DebuggerDocument(ServerConnection*); - - // These are all calls from the JS - static JSValueRef breakpointEditorHTMLCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef pauseCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef resumeCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef stepIntoCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef evaluateScriptCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef currentFunctionStackCallback(JSContextRef /*context*/, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef localScopeVariableNamesForCallFrameCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef valueForScopeVariableNamedCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - static JSValueRef logCallback(JSContextRef context, JSObjectRef /*function*/, JSObjectRef /*thisObject*/, size_t /*argumentCount*/, const JSValueRef /*arguments*/[], JSValueRef* /*exception*/); - - // Non Cross-platform functions - void platformPause(); - void platformResume(); - void platformStepInto(); - JSValueRef platformEvaluateScript(JSContextRef, JSStringRef script, int callFrame); - void getPlatformCurrentFunctionStack(JSContextRef, Vector<JSValueRef>& currentStack); - void getPlatformLocalScopeVariableNamesForCallFrame(JSContextRef, int callFrame, Vector<JSValueRef>& variableNames); - JSValueRef platformValueForScopeVariableNamed(JSContextRef, JSStringRef key, int callFrame); - static void platformLog(JSStringRef msg); - - // These are the calls into the JS. - bool isPaused(JSContextRef) const; - static void updateFileSource(JSContextRef, JSStringRef documentSource, JSStringRef url); - static void didParseScript(JSContextRef, JSStringRef source, JSStringRef documentSource, JSStringRef url, JSValueRef sourceId, JSValueRef baseLine); - static void willExecuteStatement(JSContextRef, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception = 0); - static void didEnterCallFrame(JSContextRef, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception = 0); - static void willLeaveCallFrame(JSContextRef, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception = 0); - static void exceptionWasRaised(JSContextRef, JSValueRef sourceId, JSValueRef lineno, JSValueRef* exception = 0); - - static JSValueRef toJSArray(JSContextRef, Vector<JSValueRef>&, JSValueRef* exception); - static JSValueRef callGlobalFunction(JSContextRef, const char* functionName, int argumentCount, JSValueRef arguments[], JSValueRef* exception = 0); // Implementation for calls into JS - - void windowScriptObjectAvailable(JSContextRef, JSObjectRef windowObject, JSValueRef* exception = 0); - - ServerConnection* server() const { return m_server.get(); } - -private: - static JSValueRef callFunctionOnObject(JSContextRef, JSObjectRef object, const char* functionName, int argumentCount, JSValueRef arguments[], JSValueRef* exception = 0); // Implementation for calls into JS - static JSClassRef getDroseraJSClass(); - static JSStaticFunction* staticFunctions(); - - static void logException(JSContextRef, JSValueRef exception); - - ServerConnectionRef m_server; -}; - -#endif //DebuggerDocument_H - diff --git a/WebKitTools/Drosera/Drosera.icns b/WebKitTools/Drosera/Drosera.icns Binary files differdeleted file mode 100644 index ead895e..0000000 --- a/WebKitTools/Drosera/Drosera.icns +++ /dev/null diff --git a/WebKitTools/Drosera/DroseraWin.make b/WebKitTools/Drosera/DroseraWin.make deleted file mode 100644 index b69d47d..0000000 --- a/WebKitTools/Drosera/DroseraWin.make +++ /dev/null @@ -1,13 +0,0 @@ -!IF !defined(BUILDSTYLE) -BUILDSTYLE=Release -!ELSEIF "$(BUILDSTYLE)"=="DEBUG" -BUILDSTYLE=Debug_Internal -!ENDIF - -install: - set WebKitLibrariesDir=$(SRCROOT)\AppleInternal - set WebKitOutputDir=$(OBJROOT) - set PRODUCTION=1 - devenv "win\Drosera.vcproj\Drosera.vcproj" /rebuild $(BUILDSTYLE) - xcopy "$(OBJROOT)\bin\*" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y - xcopy "$(OBJROOT)\bin\Drosera.resources\*" "$(DSTROOT)\AppleInternal\bin\Drosera.resources" /e/v/i/h/y diff --git a/WebKitTools/Drosera/English.lproj/Debugger.nib/classes.nib b/WebKitTools/Drosera/English.lproj/Debugger.nib/classes.nib deleted file mode 100644 index 3e0e4cb..0000000 --- a/WebKitTools/Drosera/English.lproj/Debugger.nib/classes.nib +++ /dev/null @@ -1,12 +0,0 @@ -{ - IBClasses = ( - { - CLASS = DebuggerDocument; - LANGUAGE = ObjC; - OUTLETS = {server = id; webView = WebView; }; - SUPERCLASS = NSWindowController; - }, - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -}
\ No newline at end of file diff --git a/WebKitTools/Drosera/English.lproj/Debugger.nib/info.nib b/WebKitTools/Drosera/English.lproj/Debugger.nib/info.nib deleted file mode 100644 index 7564e3e..0000000 --- a/WebKitTools/Drosera/English.lproj/Debugger.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>IBDocumentLocation</key> - <string>907 177 356 240 0 0 1280 832 </string> - <key>IBFramework Version</key> - <string>446.1</string> - <key>IBOpenObjects</key> - <array> - <integer>5</integer> - </array> - <key>IBSystem Version</key> - <string>8L127</string> -</dict> -</plist> diff --git a/WebKitTools/Drosera/English.lproj/Debugger.nib/keyedobjects.nib b/WebKitTools/Drosera/English.lproj/Debugger.nib/keyedobjects.nib Binary files differdeleted file mode 100644 index 3978af2..0000000 --- a/WebKitTools/Drosera/English.lproj/Debugger.nib/keyedobjects.nib +++ /dev/null diff --git a/WebKitTools/Drosera/English.lproj/MainMenu.nib/classes.nib b/WebKitTools/Drosera/English.lproj/MainMenu.nib/classes.nib deleted file mode 100644 index f192cda..0000000 --- a/WebKitTools/Drosera/English.lproj/MainMenu.nib/classes.nib +++ /dev/null @@ -1,40 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = {attach = id; showAttachPanel = id; }; - CLASS = DebuggerApplication; - LANGUAGE = ObjC; - OUTLETS = {attachButton = NSButton; attachTable = NSTableView; attachWindow = NSPanel; }; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - closeCurrentFile = id; - pause = id; - resume = id; - showConsole = id; - stepInto = id; - stepOut = id; - stepOver = id; - }; - CLASS = DebuggerDocument; - LANGUAGE = ObjC; - OUTLETS = {server = id; webView = WebView; }; - SUPERCLASS = NSWindowController; - }, - { - ACTIONS = { - closeCurrentFile = id; - myAction = id; - showConsole = id; - stepInto = id; - stepOut = id; - stepOver = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -}
\ No newline at end of file diff --git a/WebKitTools/Drosera/English.lproj/MainMenu.nib/info.nib b/WebKitTools/Drosera/English.lproj/MainMenu.nib/info.nib deleted file mode 100644 index 838fde9..0000000 --- a/WebKitTools/Drosera/English.lproj/MainMenu.nib/info.nib +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>IBDocumentLocation</key> - <string>488 89 356 240 0 0 1280 1002 </string> - <key>IBEditorPositions</key> - <dict> - <key>29</key> - <string>190 724 343 44 0 0 1280 1002 </string> - </dict> - <key>IBFramework Version</key> - <string>446.1</string> - <key>IBOpenObjects</key> - <array> - <integer>217</integer> - <integer>29</integer> - </array> - <key>IBSystem Version</key> - <string>8N1037</string> -</dict> -</plist> diff --git a/WebKitTools/Drosera/English.lproj/MainMenu.nib/keyedobjects.nib b/WebKitTools/Drosera/English.lproj/MainMenu.nib/keyedobjects.nib Binary files differdeleted file mode 100644 index b78326d..0000000 --- a/WebKitTools/Drosera/English.lproj/MainMenu.nib/keyedobjects.nib +++ /dev/null diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/Assertions.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/Assertions.h deleted file mode 100644 index 2144410..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/Assertions.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/Assertions.h> diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/HashTraits.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/HashTraits.h deleted file mode 100644 index 412fa98..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/HashTraits.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/HashTraits.h> diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/Noncopyable.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/Noncopyable.h deleted file mode 100644 index f8484d2..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/Noncopyable.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/Noncopyable.h> diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/OwnPtr.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/OwnPtr.h deleted file mode 100644 index 9211d38..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/OwnPtr.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/OwnPtr.h> diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/Platform.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/Platform.h deleted file mode 100644 index 3b22955..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/Platform.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/Platform.h> diff --git a/WebKitTools/Drosera/ForwardingHeaders/wtf/RetainPtr.h b/WebKitTools/Drosera/ForwardingHeaders/wtf/RetainPtr.h deleted file mode 100644 index 65fc27b..0000000 --- a/WebKitTools/Drosera/ForwardingHeaders/wtf/RetainPtr.h +++ /dev/null @@ -1 +0,0 @@ -#include <JavaScriptCore/RetainPtr.h> diff --git a/WebKitTools/Drosera/Images/Drosera.ico b/WebKitTools/Drosera/Images/Drosera.ico Binary files differdeleted file mode 100644 index 18a459d..0000000 --- a/WebKitTools/Drosera/Images/Drosera.ico +++ /dev/null diff --git a/WebKitTools/Drosera/Images/SourceArrow.png b/WebKitTools/Drosera/Images/SourceArrow.png Binary files differdeleted file mode 100644 index f493903..0000000 --- a/WebKitTools/Drosera/Images/SourceArrow.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/SourceArrowBlank.png b/WebKitTools/Drosera/Images/SourceArrowBlank.png Binary files differdeleted file mode 100644 index d178ac0..0000000 --- a/WebKitTools/Drosera/Images/SourceArrowBlank.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/SourceArrowOpen.png b/WebKitTools/Drosera/Images/SourceArrowOpen.png Binary files differdeleted file mode 100644 index 4016402..0000000 --- a/WebKitTools/Drosera/Images/SourceArrowOpen.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/background_stripe.png b/WebKitTools/Drosera/Images/background_stripe.png Binary files differdeleted file mode 100644 index d9ddebc..0000000 --- a/WebKitTools/Drosera/Images/background_stripe.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/breakPoint.tif b/WebKitTools/Drosera/Images/breakPoint.tif Binary files differdeleted file mode 100644 index 95431b4..0000000 --- a/WebKitTools/Drosera/Images/breakPoint.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/breakPointDisabled.tif b/WebKitTools/Drosera/Images/breakPointDisabled.tif Binary files differdeleted file mode 100644 index 2000bd2..0000000 --- a/WebKitTools/Drosera/Images/breakPointDisabled.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/breakpointeditor.png b/WebKitTools/Drosera/Images/breakpointeditor.png Binary files differdeleted file mode 100644 index 8bb992b..0000000 --- a/WebKitTools/Drosera/Images/breakpointeditor.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/close.tif b/WebKitTools/Drosera/Images/close.tif Binary files differdeleted file mode 100644 index a221ac7..0000000 --- a/WebKitTools/Drosera/Images/close.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/close_active.tif b/WebKitTools/Drosera/Images/close_active.tif Binary files differdeleted file mode 100644 index 104799d..0000000 --- a/WebKitTools/Drosera/Images/close_active.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/close_hover.tif b/WebKitTools/Drosera/Images/close_hover.tif Binary files differdeleted file mode 100644 index cd86fa5..0000000 --- a/WebKitTools/Drosera/Images/close_hover.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/console.png b/WebKitTools/Drosera/Images/console.png Binary files differdeleted file mode 100644 index fe7cbe6..0000000 --- a/WebKitTools/Drosera/Images/console.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/continue.tif b/WebKitTools/Drosera/Images/continue.tif Binary files differdeleted file mode 100644 index 58b9893..0000000 --- a/WebKitTools/Drosera/Images/continue.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/fileIcon.jpg b/WebKitTools/Drosera/Images/fileIcon.jpg Binary files differdeleted file mode 100644 index c651a78..0000000 --- a/WebKitTools/Drosera/Images/fileIcon.jpg +++ /dev/null diff --git a/WebKitTools/Drosera/Images/finishFunction.tif b/WebKitTools/Drosera/Images/finishFunction.tif Binary files differdeleted file mode 100644 index af75e60..0000000 --- a/WebKitTools/Drosera/Images/finishFunction.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/glossyFooterFill.tif b/WebKitTools/Drosera/Images/glossyFooterFill.tif Binary files differdeleted file mode 100644 index d5ea4d4..0000000 --- a/WebKitTools/Drosera/Images/glossyFooterFill.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/glossyHeader.png b/WebKitTools/Drosera/Images/glossyHeader.png Binary files differdeleted file mode 100644 index 8c80b6b..0000000 --- a/WebKitTools/Drosera/Images/glossyHeader.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/glossyHeaderPressed.png b/WebKitTools/Drosera/Images/glossyHeaderPressed.png Binary files differdeleted file mode 100644 index 6b0dd60..0000000 --- a/WebKitTools/Drosera/Images/glossyHeaderPressed.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/gradientBackground.png b/WebKitTools/Drosera/Images/gradientBackground.png Binary files differdeleted file mode 100644 index c0ce0a5..0000000 --- a/WebKitTools/Drosera/Images/gradientBackground.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/gutter.png b/WebKitTools/Drosera/Images/gutter.png Binary files differdeleted file mode 100644 index 9b698c1..0000000 --- a/WebKitTools/Drosera/Images/gutter.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navLeftDisabled.png b/WebKitTools/Drosera/Images/navLeftDisabled.png Binary files differdeleted file mode 100644 index edd7c26..0000000 --- a/WebKitTools/Drosera/Images/navLeftDisabled.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navLeftNormal.png b/WebKitTools/Drosera/Images/navLeftNormal.png Binary files differdeleted file mode 100644 index 9a14bbf..0000000 --- a/WebKitTools/Drosera/Images/navLeftNormal.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navLeftPressed.png b/WebKitTools/Drosera/Images/navLeftPressed.png Binary files differdeleted file mode 100644 index 840a4b4..0000000 --- a/WebKitTools/Drosera/Images/navLeftPressed.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navRightDisabled.png b/WebKitTools/Drosera/Images/navRightDisabled.png Binary files differdeleted file mode 100644 index 6057aae..0000000 --- a/WebKitTools/Drosera/Images/navRightDisabled.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navRightNormal.png b/WebKitTools/Drosera/Images/navRightNormal.png Binary files differdeleted file mode 100644 index 936cd91..0000000 --- a/WebKitTools/Drosera/Images/navRightNormal.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/navRightPressed.png b/WebKitTools/Drosera/Images/navRightPressed.png Binary files differdeleted file mode 100644 index faf78ce..0000000 --- a/WebKitTools/Drosera/Images/navRightPressed.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/pause.tif b/WebKitTools/Drosera/Images/pause.tif Binary files differdeleted file mode 100644 index 460aeed..0000000 --- a/WebKitTools/Drosera/Images/pause.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/popUpArrows.png b/WebKitTools/Drosera/Images/popUpArrows.png Binary files differdeleted file mode 100644 index f47eaa5..0000000 --- a/WebKitTools/Drosera/Images/popUpArrows.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/programCounter.tif b/WebKitTools/Drosera/Images/programCounter.tif Binary files differdeleted file mode 100644 index e65d549..0000000 --- a/WebKitTools/Drosera/Images/programCounter.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/programCounterBreakPoint.tif b/WebKitTools/Drosera/Images/programCounterBreakPoint.tif Binary files differdeleted file mode 100644 index 093b639..0000000 --- a/WebKitTools/Drosera/Images/programCounterBreakPoint.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/programCounterBreakPointDisabled.tif b/WebKitTools/Drosera/Images/programCounterBreakPointDisabled.tif Binary files differdeleted file mode 100644 index 1c1a699..0000000 --- a/WebKitTools/Drosera/Images/programCounterBreakPointDisabled.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/run.tif b/WebKitTools/Drosera/Images/run.tif Binary files differdeleted file mode 100644 index f9e815f..0000000 --- a/WebKitTools/Drosera/Images/run.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/siteCollapsed.tif b/WebKitTools/Drosera/Images/siteCollapsed.tif Binary files differdeleted file mode 100644 index 07d8a12..0000000 --- a/WebKitTools/Drosera/Images/siteCollapsed.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/siteExpanded.tif b/WebKitTools/Drosera/Images/siteExpanded.tif Binary files differdeleted file mode 100644 index 8044385..0000000 --- a/WebKitTools/Drosera/Images/siteExpanded.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/siteIcon.tif b/WebKitTools/Drosera/Images/siteIcon.tif Binary files differdeleted file mode 100644 index d32654f..0000000 --- a/WebKitTools/Drosera/Images/siteIcon.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/small.ico b/WebKitTools/Drosera/Images/small.ico Binary files differdeleted file mode 100644 index 18a459d..0000000 --- a/WebKitTools/Drosera/Images/small.ico +++ /dev/null diff --git a/WebKitTools/Drosera/Images/splitterBar.tif b/WebKitTools/Drosera/Images/splitterBar.tif Binary files differdeleted file mode 100644 index 0e7425d..0000000 --- a/WebKitTools/Drosera/Images/splitterBar.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/splitterDimple.tif b/WebKitTools/Drosera/Images/splitterDimple.tif Binary files differdeleted file mode 100644 index d112854..0000000 --- a/WebKitTools/Drosera/Images/splitterDimple.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/step.tif b/WebKitTools/Drosera/Images/step.tif Binary files differdeleted file mode 100644 index 457f1cd..0000000 --- a/WebKitTools/Drosera/Images/step.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/stepOut.tif b/WebKitTools/Drosera/Images/stepOut.tif Binary files differdeleted file mode 100644 index ff9e64b..0000000 --- a/WebKitTools/Drosera/Images/stepOut.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/stepOver.tif b/WebKitTools/Drosera/Images/stepOver.tif Binary files differdeleted file mode 100644 index 6c18c71..0000000 --- a/WebKitTools/Drosera/Images/stepOver.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/stop.tif b/WebKitTools/Drosera/Images/stop.tif Binary files differdeleted file mode 100644 index a65c6df..0000000 --- a/WebKitTools/Drosera/Images/stop.tif +++ /dev/null diff --git a/WebKitTools/Drosera/Images/toolbarBackground.png b/WebKitTools/Drosera/Images/toolbarBackground.png Binary files differdeleted file mode 100644 index 018e001..0000000 --- a/WebKitTools/Drosera/Images/toolbarBackground.png +++ /dev/null diff --git a/WebKitTools/Drosera/Images/verticalSplitterBar.tiff b/WebKitTools/Drosera/Images/verticalSplitterBar.tiff Binary files differdeleted file mode 100644 index 4810d01..0000000 --- a/WebKitTools/Drosera/Images/verticalSplitterBar.tiff +++ /dev/null diff --git a/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff b/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff Binary files differdeleted file mode 100644 index fee927b..0000000 --- a/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff +++ /dev/null diff --git a/WebKitTools/Drosera/Makefile b/WebKitTools/Drosera/Makefile deleted file mode 100644 index 4fce090..0000000 --- a/WebKitTools/Drosera/Makefile +++ /dev/null @@ -1,3 +0,0 @@ -OTHER_OPTIONS = -project mac/Drosera.xcodeproj -SCRIPTS_PATH = ../Scripts -include ../../Makefile.shared diff --git a/WebKitTools/Drosera/breakpointEditor.html b/WebKitTools/Drosera/breakpointEditor.html deleted file mode 100644 index 30ef0c9..0000000 --- a/WebKitTools/Drosera/breakpointEditor.html +++ /dev/null @@ -1 +0,0 @@ -<div class="top">Breakpoint:<label>Enable:<input class="enable" type="checkbox" onclick="window.parent.toggleBreakpointOnLine(this.firstParentWithClass('editor').id)"></input></label><label>Hit Count:<span class="hitCounter">0</span></label><label>Action:<select class="editorDropdown" onchange="window.parent.updateBreakpointTypeOnLine(this.firstParentWithClass('editor').id)"><option value="pause">Pause</option><option value="log">Log</option></select></label><input type="button" class="close" onmouseup="window.parent.toggleBreakpointEditorOnLine(this.firstParentWithClass('editor').id)"> </input></div><div class="bottom"><label class="conditionLabel" for="editorCondition">Condition:</label><div class="condition"></div></div>
\ No newline at end of file diff --git a/WebKitTools/Drosera/config.h b/WebKitTools/Drosera/config.h deleted file mode 100644 index 0b4a2c8..0000000 --- a/WebKitTools/Drosera/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (C) 2004-2007 Apple Inc. All rights reserved. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - * - */ - -#include <wtf/Platform.h> - -#if PLATFORM(MAC) - -#import <WebKit/WebKit.h> -#import <WebKit/WebScriptDebugServer.h> - -#endif - -#if PLATFORM(WIN) - -// If we don't define these, they get defined in windef.h. -// We want to use std::min and std::max -#ifndef max -#define max max -#endif -#ifndef min -#define min min -#endif - -#include <tchar.h> - -#endif // PLATFORM(WIN) - diff --git a/WebKitTools/Drosera/console.css b/WebKitTools/Drosera/console.css deleted file mode 100644 index 02c37b7..0000000 --- a/WebKitTools/Drosera/console.css +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - * Copyright (C) 2006 David Smith (catfish.man@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -img { padding: 0; margin: 0; } -body { margin: 0; padding: 0; overflow: hidden; } - -#main { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; -} - -#top { - position: absolute; - top: 0; - bottom: 50px; - left: 0; - right: 0; -} - -#history { - position: absolute; - top: 0; - bottom: 10px; - left: 0; - right: 0; - overflow-y: auto; - overflow-x: hidden; -} - -#divider { - cursor: row-resize; - position: absolute; - bottom: 0; - left: 0; - right: 0; - background: url(splitterDimple.tif) 50% no-repeat, url(splitterBar.tif) repeat-x; - height: 10px; -} - -#input { - position: absolute; - -webkit-box-sizing: border-box; - height: 50px; - max-height: 150px; - left: 0; - right: 0; - bottom: 0; - -webkit-user-modify: read-write-plaintext-only; - -webkit-nbsp-mode: space; - -webkit-line-break: after-white-space; - word-wrap: break-word; - outline: none; - font-family: monospace; - font-size: 11px; - line-height: 14px; - padding: 3px; -} - -#history .row { - min-height: 38px; - padding: 4px; - -webkit-box-sizing: border-box; - font-family: monospace; - font-size: 12px; -} - -#history .row.alt { - background-color: rgb(237, 243, 254); -} - -.expression { - color: blue; -} - -.result { - color: navy; -} diff --git a/WebKitTools/Drosera/console.html b/WebKitTools/Drosera/console.html deleted file mode 100644 index 888878b..0000000 --- a/WebKitTools/Drosera/console.html +++ /dev/null @@ -1,47 +0,0 @@ -<!-- -Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - its contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - <title>Console</title> - <script type="text/javascript" src="console.js"></script> - <style type="text/css"> - @import "console.css"; - </style> -</head> -<body onload="loaded()" onunload="unloading()"> -<div id="main"> -<div id="top"> -<div id="history"></div> -<div id="divider"></div> -</div> -<div id="input"></div> -</div> -</body> -</html> diff --git a/WebKitTools/Drosera/console.js b/WebKitTools/Drosera/console.js deleted file mode 100644 index 7db3fb4..0000000 --- a/WebKitTools/Drosera/console.js +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - * Copyright (C) 2006 David Smith (catfish.man@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -var inputElement = null; -var mainWindow = window.opener; -var history = [""]; -var historyIndex = 0; - -function loaded() -{ - inputElement = document.getElementById("input"); - inputElement.addEventListener("keydown", inputKeyDown, false); - inputElement.addEventListener("keyup", inputKeyUp, false); - inputElement.focus(); -} - -function inputKeyDown(event) -{ - if (event.keyCode == 13 && !event.altKey) { - if (mainWindow.isPaused && mainWindow.currentStack) { - history[history.length - 1] = inputElement.innerText; - sendScript(inputElement.innerText); - inputElement.innerText = ""; - history.push(""); - historyIndex = history.length - 1; - inputElement.focus(); - } else - alert("The debugger needs to be paused.\tIn order to evaluate your script input you need to pause the debugger in the context of another script."); - event.preventDefault(); - } else if (event.keyCode == 38 && !event.altKey && historyIndex > 0) { - historyIndex--; - inputElement.innerText = history[historyIndex]; - inputElement.focus() - event.preventDefault(); - } else if (event.keyCode == 40 && !event.altKey && historyIndex < (history.length - 1)) { - historyIndex++; - inputElement.innerText = history[historyIndex]; - inputElement.focus() - event.preventDefault(); - } -} - -function inputKeyUp(event) -{ - if (event.keyCode != 38 && event.keyCode != 40 && event.keyCode != 13) { - history[historyIndex] = inputElement.innerText; - } -} - -function appendMessage(exp, msg) -{ - var historyDisplay = document.getElementById("history"); - var row = document.createElement("div"); - row.className = "row"; - if (historyDisplay.childNodes.length % 2) - row.className += " alt"; - - if (exp.length > 0) { - var expression = document.createElement("div"); - expression.className = "expression"; - expression.innerText = exp; - row.appendChild(expression); - } - - var result = document.createElement("div"); - result.className = "result"; - result.innerText = msg; - - row.appendChild(result); - - historyDisplay.appendChild(row); - historyDisplay.scrollTop = historyDisplay.scrollHeight; -} - -function sendScript(script) -{ - appendMessage(script, mainWindow.DebuggerDocument.evaluateScript(script, mainWindow.currentCallFrame.index)); - if (script.indexOf("=") >= 0) - mainWindow.currentCallFrame.loadVariables(); -} - -function unloading() -{ - mainWindow.consoleWindow = null; -} diff --git a/WebKitTools/Drosera/debugger.css b/WebKitTools/Drosera/debugger.css deleted file mode 100644 index f15d572..0000000 --- a/WebKitTools/Drosera/debugger.css +++ /dev/null @@ -1,314 +0,0 @@ -/* - * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - * Copyright (C) 2006 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -img { padding: 0; margin: 0; } -body { margin: 0; padding: 0; overflow: hidden; } -iframe { border: none; } - -#fileBrowser { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 220px;} -#fileList { position: absolute; top: 0; bottom: 0; left: 0; right: 10px; padding: 0; margin: 0; } -#filesDivider { position: absolute; z-index: 10; right: 0px; bottom: 0px; top: 0; width: 10px; cursor: col-resize; background: url(verticalSplitterDimple.tiff) 50% no-repeat, url(verticalSplitterBar.tiff) repeat-y; width: 10px; } -#masterMain { position: absolute; top: 0; bottom: 0; left: 0; right: 0; } -#main { position: absolute; top: 0; bottom: 0; left: 220px; right: 0; } -#info { position: absolute; top: 0; height: 175px; left: 0; right: 0; } -#divider { cursor: row-resize; position: absolute; bottom: 0; left: 0; right: 0; background: url(splitterDimple.tif) 50% no-repeat, url(splitterBar.tif) repeat-x; height: 10px } -#body { position: absolute; top: 175px; left: 0; right: 0; bottom: 0; } -#sourcesContainer { position: absolute; top: 16px; left: 0; right: 0; bottom: 21px; background-color: white; } -#sources { width: 100%; height: 100% } -#header { vertical-align: top; height: 16px; -webkit-box-sizing: border-box; border-bottom: 1px solid #aaa; background: url(glossyHeader.png) repeat-x; position: absolute; top: 0; left: 0; right: 0; } -#header > * { vertical-align: top; } -.footer { height: 21px; -webkit-box-sizing: border-box; border-top: 1px solid #aaa; background: url(glossyFooterFill.tif) repeat-x; position: absolute; bottom: 0; left: 0; right: 0; } -#infoDivider { position: absolute; z-index: 10; right: 0; left: 0; top: 0; bottom: 9px; width: 10px; cursor: col-resize; background: url(verticalSplitterDimple.tiff) 50% no-repeat, url(verticalSplitterBar.tiff) repeat-y; width: 10px; } - -#filesBrowserSites { - position: absolute; - font-family: "Lucida Grande", sans-serif; - font-size: 11px; - padding: 2px; - overflow-x: hidden; - overflow-y: auto; - top: 16px; - left: 0; - right: 0; - bottom: 21px; - background-color: white; -} - -#filesBrowserSites div { - font-weight: normal; - overflow: hidden; - white-space: nowrap; - padding-left: 26px; - background: url(siteExpanded.tif) no-repeat 0px 0px; - cursor: default; - margin-bottom: 2px; -} - -#filesBrowserSites div.expanded { - background: url(siteExpanded.tif) no-repeat 0px 0px; -} -#filesBrowserSites div.collapsed { - background: url(siteCollapsed.tif) no-repeat 0px 0px; -} - -#filesBrowserSites div ul { - margin: 0; - padding: 0; - list-style-type: none; - font-weight: normal; -} - -#filesBrowserSites div ul li { - margin-left: -25px; - height: 15px; - padding-left: 38px; - margin-top: 1px; - margin-bottom: 1px; - background: url(fileIcon.jpg) no-repeat 26px 0%; - cursor: default; - overflow: hidden; -} - -#filesBrowserSites div ul li.active { - background-color: #ccc; -} - -#filesBrowserSites div ul li.passive { - background-color: white; -} - -#files, #functions { - opacity: 0; - position: absolute; - top: -2px; - left: -3px; - right: 0; - z-index: 10; - margin: 0; - padding: 0; - min-width: 100px; -} - -button.popup { - background: url(popUpArrows.png) right no-repeat; - border: none; - height: 15px; - font-size: 10px; - line-height: 10px; - padding: 0 20px 0 5px; - margin: 0; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - position: relative; - min-width: 100px; - max-width: 350px; -} - -#filesPopupButtonContent, #functionButtonContent { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - width: 100%; - height: 100%; - line-height: 12px; - text-align: left; -} - -.placeholder { color: rgba(0, 0, 0, 0.6) } - -button.nav { - position: relative; - width: 32px; - height: 15px; - border: none; - margin: 0; - padding: 0; - border-left: 1px solid transparent; - border-right: 1px solid #aaa; -} - -button.nav.right { - background: url(navRightNormal.png) no-repeat; -} - -button.nav.right:disabled, button.nav.right:disabled:active { - border-left: 1px solid transparent; - background: url(navRightDisabled.png) no-repeat; -} - -button.nav.right:active { - border-left: 1px solid rgba(0, 0, 0, 0.3); - background: url(navRightPressed.png) no-repeat; -} - -button.nav.left { - background: url(navLeftNormal.png) no-repeat; -} - -button.nav.left:disabled, button.nav.left:disabled:active { - border-left: 1px solid transparent; - background: url(navLeftDisabled.png) no-repeat; -} - -button.nav.left:active { - margin-left: 0; - border-left: 1px solid rgba(0, 0, 0, 0.3); - background: url(navLeftPressed.png) no-repeat; -} - -#leftPane { - position: absolute; - top: 0; - bottom: 10px; - left: 0; - width: 253px; - padding: 0; - margin: 0; -} - -#rightPane { - position: absolute; - top: 0; - bottom: 0; - right: 0; - left: 253px; - padding: 0; - margin: 0; -} - -#stackframe { - position: absolute; - top: 0; - bottom: 0; - right: 0; - left: 0; -} - -#stackframeBody { - overflow-y: scroll; - overflow-x: hidden; - position: absolute; - top: 16px; - bottom: 0; - right: 0; - left: 0; -} - -#variables { - position: absolute; - top: 0; - bottom: 10px; - right: 0; - left: 10px; -} - -#variablesBody { - overflow-y: scroll; - overflow-x: hidden; - position: absolute; - top: 16px; - bottom: 0; - right: 0; - left: 0; -} - -.infoBackground { - background: url(background_stripe.png) repeat; - position: absolute; - top: 0; - bottom: 0; - right: 0; - left: 0; - z-index: -1; -} - -table { - font-family: "Lucida Grande", sans-serif; - font-size: 11px; - border-collapse: collapse; - border-spacing: 0; - width: 100%; - padding: 0; - margin: 0; - border: 0; -} - -td { - padding: 3px 7px 3px 9px; - height: 15px; - -webkit-box-sizing: border-box; - -webkit-user-select: none; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} - -tr.current { - background-color: rgb(56, 117, 215); - color: white; -} - -.stackNumber { - width: 2em; - padding: 3px 0; - text-align: center; -} - -.variable { - width: 170px; -} - -.column th.scrollCorner { - width: 15px; - padding: 0; - border-right: none; -} - -#variableColumnResizer { - position: absolute; - top: 0; - left: 168px; - width: 4px; - height: 16px; - cursor: col-resize; -} - -.column th { - background: url(glossyHeader.png) repeat-x; - border-right: 1px solid #d9d9d9; - height: 15px; - -webkit-box-sizing: border-box; - border-bottom: 1px solid #aaa; - font-weight: normal; - vertical-align: middle; - padding: 0 8px; - text-align: left; - -webkit-user-select: none; -} diff --git a/WebKitTools/Drosera/debugger.html b/WebKitTools/Drosera/debugger.html deleted file mode 100644 index 4b9685d..0000000 --- a/WebKitTools/Drosera/debugger.html +++ /dev/null @@ -1,92 +0,0 @@ -<!-- -Copyright (C) 2006 Apple Computer, Inc. All rights reserved. -Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - its contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - <title>Debugger</title> - <script type="text/javascript" src="debugger.js"></script> - <style type="text/css"> - @import "debugger.css"; - </style> -</head> -<body onload="loaded()"> -<div id="masterMain"> -<div id="fileBrowser"> -<div id="fileList"> -<table id="fileListTableHeader"> -<tr class="column"><th onmousedown="headerMouseDown(this);" onmouseup="headerMouseUp(this);" onmouseout="headerMouseOut(this);">Files</th><th class="scrollCorner"></th></tr> -</table> -<div id="filesBrowserSites"> -</div> -<div class="footer"></div> -</div> -<div id="filesDivider"></div> -</div> -<div id="main"> -<div id="info"> -<div id="leftPane"> -<div id="stackframe"> -<table id="stackframeTableHeader"> -<tr class="column"><th class="stackNumber" onmousedown="headerMouseDown(this);" onmouseup="headerMouseUp(this);" onmouseout="headerMouseOut(this);">#</th><th onmousedown="headerMouseDown(this);" onmouseup="headerMouseUp(this);" onmouseout="headerMouseOut(this);">Function</th><th class="scrollCorner"></th></tr> -</table> -<div id="stackframeBody"> -<div class="infoBackground"></div> -<table id="stackframeTable"></table> -</div> -</div> -</div> -<div id="rightPane"> -<div id="infoDivider"></div> -<div id="variables"> -<table id="variablesTableHeader"> -<tr class="column"><th class="variable" id="variable" onmousedown="headerMouseDown(this);" onmouseup="headerMouseUp(this);" onmouseout="headerMouseOut(this);">Variable<div id="variableColumnResizer"></div> -</th><th onmousedown="headerMouseDown(this);" onmouseup="headerMouseUp(this);" onmouseout="headerMouseOut(this);">Value</th><th class="scrollCorner"></th></tr> -</table> -<div id="variablesBody"> -<div class="infoBackground"></div> -<table id="variablesTable"></table> -</div> -</div> -</div> -<div id="divider"></div> -</div> -<div id="body"> -<div id="header"> -<button id="navFileLeftButton" class="nav left" disabled onclick="navFilePrevious(this)"></button><button id="navFileRightButton" class="nav right" disabled onclick="navFileNext(this)"></button> -<button class="popup"><select size="1" id="files" onchange="switchFile()"></select><div id="filesPopupButtonContent"><span class="placeholder"><No files loaded></span></div></button> -<button class="popup" id="functionNamesPopup" style="display: none"><select size="1" id="functions" onchange="switchFunction(this.selectedIndex)"></select><div id="functionPopupButtonContent"><span class="placeholder"><No selected symbol></span></div></button> -</div> -<div id="sourcesContainer"><iframe name="sourcesFrame" id="sources" src="viewer.html"></iframe></div> -<div class="footer"></div> -</div> -</div> -</div> -</body> -</html> diff --git a/WebKitTools/Drosera/debugger.js b/WebKitTools/Drosera/debugger.js deleted file mode 100644 index 076fedf..0000000 --- a/WebKitTools/Drosera/debugger.js +++ /dev/null @@ -1,1433 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006 David Smith (catfish.man@gmail.com) - * Copyright (C) 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -var files = new Array(); -var filesLookup = new Object(); -var scripts = new Array(); -var currentFile = -1; -var currentRow = null; -var currentStack = null; -var currentCallFrame = null; -var lastStatement = null; -var frameLineNumberStack = new Array(); -var previousFiles = new Array(); -var nextFiles = new Array(); -var isResizingColumn = false; -var draggingBreakpoint = null; -var steppingOut = false; -var steppingOver = false; -var steppingStack = 0; -var pauseOnNextStatement = false; -var pausedWhileLeavingFrame = false; -var consoleWindow = null; -var breakpointEditorHTML = DebuggerDocument.breakpointEditorHTML(); -var pendingAction = null; -var isPaused = false; - -ScriptCallFrame = function (functionName, index, row) -{ - this.functionName = functionName; - this.index = index; - this.row = row; - this.localVariableNames = null; -} - -ScriptCallFrame.prototype.valueForScopeVariable = function (name) -{ - return DebuggerDocument.valueForScopeVariableNamed(name, this.index); -} - -ScriptCallFrame.prototype.loadVariables = function () -{ - if (!this.localVariableNames) - this.localVariableNames = DebuggerDocument.localScopeVariableNamesForCallFrame(this.index); - - var variablesTable = document.getElementById("variablesTable"); - variablesTable.innerHTML = ""; - - if (!this.localVariableNames) - return; - - for(var i = 0; i < this.localVariableNames.length; i++) { - var tr = document.createElement("tr"); - var td = document.createElement("td"); - td.innerText = this.localVariableNames[i]; - td.className = "variable"; - tr.appendChild(td); - - td = document.createElement("td"); - td.innerText = this.valueForScopeVariable(this.localVariableNames[i]); - tr.appendChild(td); - tr.addEventListener("click", selectVariable, true); - - variablesTable.appendChild(tr); - } -} - -function sleep(numberMillis) -{ - var now = new Date(); - var exitTime = now.getTime() + numberMillis; - while (true) { - now = new Date(); - if (now.getTime() > exitTime) - return; - } -} - -function headerMouseDown(element) -{ - if (!isResizingColumn) - element.style.background = "url(glossyHeaderPressed.png) repeat-x"; -} - -function headerMouseUp(element) -{ - element.style.background = "url(glossyHeader.png) repeat-x"; -} - -function headerMouseOut(element) -{ - element.style.background = "url(glossyHeader.png) repeat-x"; -} - -function filesDividerDragStart(event) -{ - dividerDragStart(document.getElementById("filesDivider"), filesDividerDrag, filesDividerDragEnd, event, "col-resize"); -} - -function filesDividerDragEnd(event) -{ - dividerDragEnd(document.getElementById("filesDivider"), filesDividerDrag, filesDividerDragEnd, event); -} - -function filesDividerDrag(event) -{ - var element = document.getElementById("filesDivider"); - if (document.getElementById("filesDivider").dragging == true) { - var masterMain = document.getElementById("masterMain"); - var main = document.getElementById("main"); - var fileBrowser = document.getElementById("fileBrowser"); - var x = event.clientX + window.scrollX; - var delta = element.dragLastX - x; - var newWidth = constrainedWidthFromElement(fileBrowser.clientWidth - delta, masterMain, 0.1, 0.9); - if ((fileBrowser.clientWidth - delta) == newWidth) // the width wasn't constrained - element.dragLastX = x; - fileBrowser.style.width = newWidth + "px"; - main.style.left = newWidth + "px"; - event.preventDefault(); - } -} - -function dividerDragStart(element, dividerDrag, dividerDragEnd, event, cursor) -{ - element.dragging = true; - element.dragLastY = event.clientY + window.scrollY; - element.dragLastX = event.clientX + window.scrollX; - document.addEventListener("mousemove", dividerDrag, true); - document.addEventListener("mouseup", dividerDragEnd, true); - document.body.style.cursor = cursor; - event.preventDefault(); -} - -function dividerDragEnd(element, dividerDrag, dividerDragEnd, event) -{ - element.dragging = false; - document.removeEventListener("mousemove", dividerDrag, true); - document.removeEventListener("mouseup", dividerDragEnd, true); - document.body.style.removeProperty("cursor"); -} - -function dividerDrag(event) -{ - var element = document.getElementById("divider"); - if (document.getElementById("divider").dragging == true) { - var main = document.getElementById("main"); - var top = document.getElementById("info"); - var bottom = document.getElementById("body"); - var y = event.clientY + window.scrollY; - var delta = element.dragLastY - y; - var newHeight = constrainedHeightFromElement(top.clientHeight - delta, main); - if ((top.clientHeight - delta) == newHeight) // the height wasn't constrained - element.dragLastY = y; - top.style.height = newHeight + "px"; - bottom.style.top = newHeight + "px"; - event.preventDefault(); - } -} - -function sourceDividerDragStart(event) -{ - dividerDragStart(document.getElementById("divider"), dividerDrag, sourceDividerDragEnd, event, "row-resize"); -} - -function sourceDividerDragEnd(event) -{ - dividerDragEnd(document.getElementById("divider"), dividerDrag, sourceDividerDragEnd, event); -} - -function infoDividerDragStart(event) -{ - dividerDragStart(document.getElementById("infoDivider"), infoDividerDrag, infoDividerDragEnd, event, "col-resize"); -} - -function infoDividerDragEnd(event) -{ - dividerDragEnd(document.getElementById("infoDivider"), infoDividerDrag, infoDividerDragEnd, event); -} - -function infoDividerDrag(event) -{ - var element = document.getElementById("infoDivider"); - if (document.getElementById("infoDivider").dragging == true) { - var main = document.getElementById("main"); - var leftPane = document.getElementById("leftPane"); - var rightPane = document.getElementById("rightPane"); - var x = event.clientX + window.scrollX; - var delta = element.dragLastX - x; - var newWidth = constrainedWidthFromElement(leftPane.clientWidth - delta, main); - if ((leftPane.clientWidth - delta) == newWidth) // the width wasn't constrained - element.dragLastX = x; - leftPane.style.width = newWidth + "px"; - rightPane.style.left = newWidth + "px"; - event.preventDefault(); - } -} - -function columnResizerDragStart(event) -{ - isResizingColumn = true; - dividerDragStart(document.getElementById("variableColumnResizer"), columnResizerDrag, columnResizerDragEnd, event, "col-resize"); -} - -function columnResizerDragEnd(event) -{ - isResizingColumn = false; - dividerDragEnd(document.getElementById("variableColumnResizer"), columnResizerDrag, columnResizerDragEnd, event); -} - -function columnResizerDrag(event) -{ - var element = document.getElementById("variableColumnResizer"); - if (element.dragging == true) { - var main = document.getElementById("rightPane"); - var variableColumn = document.getElementById("variable"); - var rules = document.defaultView.getMatchedCSSRules(variableColumn, ""); - for (var i = 0; i < rules.length; i++) { - if (rules[i].selectorText == ".variable") { - var columnRule = rules[i]; - break; - } - } - - var x = event.clientX + window.scrollX; - var delta = element.dragLastX - x; - var newWidth = constrainedWidthFromElement(variableColumn.clientWidth - delta, main); - if ((variableColumn.clientWidth - delta) == newWidth) // the width wasn't constrained - element.dragLastX = x; - columnRule.style.width = newWidth + "px"; - element.style.left = newWidth + "px"; - event.preventDefault(); - } -} - -function constrainedWidthFromElement(width, element, constrainLeft, constrainRight) -{ - if (constrainLeft === undefined) constrainLeft = 0.25; - if (constrainRight === undefined) constrainRight = 0.75; - - if (width < element.clientWidth * constrainLeft) - width = element.clientWidth * constrainLeft; - else if (width > element.clientWidth * constrainRight) - width = element.clientWidth * constrainRight; - return width; -} - -function constrainedHeightFromElement(height, element) -{ - if (height < element.clientHeight * 0.25) - height = element.clientHeight * 0.25; - else if (height > element.clientHeight * 0.75) - height = element.clientHeight * 0.75; - return height; -} - -function loaded() -{ - document.getElementById("divider").addEventListener("mousedown", sourceDividerDragStart, false); - document.getElementById("infoDivider").addEventListener("mousedown", infoDividerDragStart, false); - document.getElementById("filesDivider").addEventListener("mousedown", filesDividerDragStart, false); - document.getElementById("variableColumnResizer").addEventListener("mousedown", columnResizerDragStart, false); -} - -function pause() -{ - DebuggerDocument.pause(); - isPaused = true; -} - -function resume() -{ - if (currentRow) { - currentRow.removeStyleClass("current"); - currentRow = null; - } - - var stackframeTable = document.getElementById("stackframeTable"); - stackframeTable.innerHTML = ""; // clear the content - var variablesTable = document.getElementById("variablesTable"); - variablesTable.innerHTML = ""; // clear the content - currentStack = null; - currentCallFrame = null; - - pauseOnNextStatement = false; - pausedWhileLeavingFrame = false; - steppingOut = false; - steppingOver = false; - steppingStack = 0; - - DebuggerDocument.resume(); - isPaused = false; -} - -function stepInto() -{ - pauseOnNextStatement = false; - steppingOut = false; - steppingOver = false; - steppingStack = 0; - DebuggerDocument.stepInto(); -} - -function stepOver() -{ - pauseOnNextStatement = false; - steppingOver = true; - steppingStack = 0; - DebuggerDocument.resume(); -} - -function stepOut() -{ - pauseOnNextStatement = pausedWhileLeavingFrame; - steppingOver = false; - steppingStack = 0; - steppingOut = true; - DebuggerDocument.resume(); -} - -Element.prototype.removeStyleClass = function(className) -{ - if (this.hasStyleClass(className)) - this.className = this.className.replace(className, ""); -} - -Element.prototype.addStyleClass = function(className) -{ - if (!this.hasStyleClass(className)) - this.className += (this.className.length ? " " + className : className); -} - -Element.prototype.hasStyleClass = function(className) -{ - return this.className.indexOf(className) != -1; -} - -Element.prototype.firstParentWithClass = function(className) -{ - var node = this.parentNode; - while(!node.hasStyleClass(className)) { - if (node == document) - return null; - node = node.parentNode; - } - return node; -} - -Element.prototype.query = function(query) -{ - return document.evaluate(query, this, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue; -} - -Element.prototype.removeChildren = function() -{ - while (this.firstChild) - this.removeChild(this.firstChild); -} - -function breakpointAction(event) -{ - var file = files[currentFile]; - var lineNum = event.target.title; - - if (!file.breakpoints[lineNum]) - file.breakpoints[lineNum] = new BreakPoint(event.target.parentNode, file, lineNum); - else - toggleBreakpointOnLine(lineNum); -} - -BreakPoint = function(row, file, line) -{ - this.row = row; - this.file = file; - this.line = line; - row.addStyleClass("breakpoint"); - row.removeStyleClass("disabled"); - this.value = "break"; - this.enabled = true; - this.editor = null; - this.type = 0; - this.hitcount = 0; -} - -function toggleBreakpointEditorOnLine(lineNum) -{ - if (pendingAction) { - clearTimeout(pendingAction); - pendingAction = null; - } - var file = files[currentFile]; - bp = file.breakpoints[lineNum]; - if (bp) { - var editor = bp.editor; - if (!editor) { - var sourcesDocument = document.getElementById("sources").contentDocument; - editor = sourcesDocument.createElement("div"); - editor.className = "editor"; - editor.id = lineNum; - editor.innerHTML = breakpointEditorHTML; - - bp.row.childNodes[1].appendChild(editor); - - bp.editor = editor; - file.breakpoints[lineNum] = bp; - - editor.query('.//input[@class="enable"]').checked = bp.enabled; - - editor.query('.//select[@class="editorDropdown"]').selectedIndex = bp.type; - updateBreakpointTypeOnLine(lineNum); - - editor.query('.//span[@class="hitCounter"]').innerText = bp.hitcount; - - setConditionFieldText(bp); - } else { - saveBreakpointOnLine(lineNum); - bp.row.childNodes[1].removeChild(editor); - bp.editor = null; - } - } -} - -function updateBreakpointTypeOnLine(line) -{ - var breakpoint = files[currentFile].breakpoints[line]; - var editor = breakpoint.editor; - var label = editor.query('.//label[@class="conditionLabel"]'); - var dropdown = editor.query('.//select[@class="editorDropdown"]'); - breakpoint.type = dropdown.selectedIndex; - switch(breakpoint.type) { - case 0: - label.innerText = "Condition:"; - break; - case 1: - label.innerText = "Expression:"; - break; - } -} - -function setConditionFieldText(breakpoint) -{ - var conditionField = breakpoint.editor.query('.//div[@class="condition"]'); - - var functionBody = breakpoint.value; - if (!functionBody || functionBody == "break") - functionBody = ""; - else { - var startIndex = functionBody.indexOf("return((") + 8; - var endIndex = null; - if (startIndex != 7) //-1 + 8, yes, that's lame - endIndex = functionBody.lastIndexOf("))"); - else { - startIndex = functionBody.indexOf("{") + 1; - endIndex = functionBody.lastIndexOf("}"); - } - functionBody = functionBody.substring(startIndex, endIndex); - } - conditionField.innerText = functionBody; - conditionField.addEventListener("keyup", new Function("saveBreakpointOnLine(" + breakpoint.line + ");"), false); - conditionField.focus(); -} - -function saveBreakpointOnLine(lineNum) -{ - var file = files[currentFile]; - var breakpoint = file.breakpoints[lineNum]; - row = file.element.firstChild.childNodes.item(lineNum - 1); - var editor = breakpoint.editor; - var body = editor.query('.//div[@class="condition"]').innerText; - var actionIndex = editor.query('.//select[@class="editorDropdown"]').selectedIndex; - if (body.length == 0) - breakpoint.value = "break"; - else if (body.indexOf("return") != -1) - breakpoint.value = "__drosera_breakpoint_conditional_func = function() {" + body + "}; __drosera_breakpoint_conditional_func();"; - else - breakpoint.value = "__drosera_breakpoint_conditional_func = function() { return((" + body + ")); }; __drosera_breakpoint_conditional_func();"; -} - -function toggleBreakpointOnLine(lineNum) -{ - var breakpoint = files[currentFile].breakpoints[lineNum]; - pendingAction = null; - if (breakpoint.enabled) - breakpoint.row.addStyleClass("disabled"); - else - breakpoint.row.removeStyleClass("disabled"); - - var hack = breakpoint.row.offsetTop; // force a relayout if needed. - - breakpoint.enabled = !breakpoint.enabled; - var editor = breakpoint.editor; - if (editor) { - editor.query('.//input[@class="enable"]').checked = breakpoint.enabled; - setConditionFieldText(breakpoint, lineNum); - } -} - -function moveBreakPoint(event) -{ - if (event.target.parentNode.hasStyleClass("breakpoint")) { - draggingBreakpoint = event.target; - draggingBreakpoint.started = false; - draggingBreakpoint.dragLastY = event.clientY + window.scrollY; - draggingBreakpoint.dragLastX = event.clientX + window.scrollX; - var sourcesDocument = document.getElementById("sources").contentDocument; - sourcesDocument.addEventListener("mousemove", breakpointDrag, true); - sourcesDocument.addEventListener("mouseup", breakpointDragEnd, true); - sourcesDocument.body.style.cursor = "default"; - } -} - -function breakpointDrag(event) -{ - var sourcesDocument = document.getElementById("sources").contentDocument; - if (!draggingBreakpoint) { - sourcesDocument.removeEventListener("mousemove", breakpointDrag, true); - sourcesDocument.removeEventListener("mouseup", breakpointDragEnd, true); - sourcesDocument.body.style.removeProperty("cursor"); - return; - } - - var x = event.clientX + window.scrollX; - var y = event.clientY + window.scrollY; - var deltaX = draggingBreakpoint.dragLastX - x; - var deltaY = draggingBreakpoint.dragLastY - y; - if (draggingBreakpoint.started || deltaX > 4 || deltaY > 4 || deltaX < -4 || deltaY < -4) { - - if (!draggingBreakpoint.started) { - var lineNum = draggingBreakpoint.title; - var file = files[currentFile]; - var breakpoint = file.breakpoints[lineNum]; - draggingBreakpoint.breakpoint = breakpoint; - breakpoint.row.removeStyleClass("breakpoint"); - breakpoint.row.removeStyleClass("disabled"); - - var editor = breakpoint.editor; - if (editor) - toggleBreakpointEditorOnLine(lineNum); - - draggingBreakpoint.started = true; - - file.breakpoints[lineNum] = null; - - var dragImage = sourcesDocument.createElement("img"); - if (draggingBreakpoint.breakpoint.enabled) - dragImage.src = "breakPoint.tif"; - else - dragImage.src = "breakPointDisabled.tif"; - - dragImage.id = "breakpointDrag"; - dragImage.style.top = y - 8 + "px"; - dragImage.style.left = x - 12 + "px"; - sourcesDocument.body.appendChild(dragImage); - } else { - var dragImage = sourcesDocument.getElementById("breakpointDrag"); - if (!dragImage) { - sourcesDocument.removeEventListener("mousemove", breakpointDrag, true); - sourcesDocument.removeEventListener("mouseup", breakpointDragEnd, true); - sourcesDocument.body.style.removeProperty("cursor"); - return; - } - - dragImage.style.top = y - 8 + "px"; - dragImage.style.left = x - 12 + "px"; - if (x > 40) - dragImage.style.visibility = "hidden"; - else - dragImage.style.removeProperty("visibility"); - } - - draggingBreakpoint.dragLastX = x; - draggingBreakpoint.dragLastY = y; - } -} - -function breakpointDragEnd(event) -{ - var sourcesDocument = document.getElementById("sources").contentDocument; - sourcesDocument.removeEventListener("mousemove", breakpointDrag, true); - sourcesDocument.removeEventListener("mouseup", breakpointDragEnd, true); - sourcesDocument.body.style.removeProperty("cursor"); - - var dragImage = sourcesDocument.getElementById("breakpointDrag"); - if (!dragImage) - return; - - dragImage.parentNode.removeChild(dragImage); - - var x = event.clientX + window.scrollX; - if (x > 40 || !draggingBreakpoint) - return; - - var y = event.clientY + window.scrollY; - var rowHeight = draggingBreakpoint.parentNode.offsetHeight; - var row = Math.ceil(y / rowHeight); - if (row <= 0) - row = 1; - - var file = files[currentFile]; - var table = file.element.firstChild; - if (row > table.childNodes.length) - return; - - var tr = table.childNodes.item(row - 1); - if (!tr) - return; - - var breakpoint = draggingBreakpoint.breakpoint; - breakpoint.row = tr; - - // leave the editor there if it exists... we'll want to update it to the new values - breakpoint.editor = file.breakpoints[row].editor; - - file.breakpoints[row] = breakpoint; - - if (breakpoint.editor) { - breakpoint.editor.id = row; - updateBreakpointTypeOnLine(row); - setConditionFieldText(breakpoint); - } - - if (!breakpoint.enabled) - tr.addStyleClass("disabled"); - - tr.addStyleClass("breakpoint"); - - draggingBreakpoint = null; -} - -function totalOffsetTop(element, stop) -{ - var currentTop = 0; - while (element.offsetParent) { - currentTop += element.offsetTop - element = element.offsetParent; - if (element == stop) - break; - } - return currentTop; -} - -function switchFile(fileIndex) -{ - var filesSelect = document.getElementById("files"); - - if (fileIndex === undefined) - fileIndex = filesSelect.selectedIndex; - - fileClicked(filesSelect.options[fileIndex].value, false); - loadFile(filesSelect.options[fileIndex].value, true); -} - -function syntaxHighlight(code, file) -{ - var keywords = { 'abstract': 1, 'boolean': 1, 'break': 1, 'byte': 1, 'case': 1, 'catch': 1, 'char': 1, 'class': 1, 'const': 1, 'continue': 1, 'debugger': 1, 'default': 1, 'delete': 1, 'do': 1, 'double': 1, 'else': 1, 'enum': 1, 'export': 1, 'extends': 1, 'false': 1, 'final': 1, 'finally': 1, 'float': 1, 'for': 1, 'function': 1, 'goto': 1, 'if': 1, 'implements': 1, 'import': 1, 'in': 1, 'instanceof': 1, 'int': 1, 'interface': 1, 'long': 1, 'native': 1, 'new': 1, 'null': 1, 'package': 1, 'private': 1, 'protected': 1, 'public': 1, 'return': 1, 'short': 1, 'static': 1, 'super': 1, 'switch': 1, 'synchronized': 1, 'this': 1, 'throw': 1, 'throws': 1, 'transient': 1, 'true': 1, 'try': 1, 'typeof': 1, 'var': 1, 'void': 1, 'volatile': 1, 'while': 1, 'with': 1 }; - - function echoChar(c) { - if (c == '<') - result += '<'; - else if (c == '>') - result += '>'; - else if (c == '&') - result += '&'; - else if (c == '\t') - result += ' '; - else - result += c; - } - - function isDigit(number) { - var string = "1234567890"; - if (string.indexOf(number) != -1) - return true; - return false; - } - - function isHex(hex) { - var string = "1234567890abcdefABCDEF"; - if (string.indexOf(hex) != -1) - return true; - return false; - } - - function isLetter(letter) { - var string = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - if (string.indexOf(letter) != -1) - return true; - return false; - } - - var result = ""; - var cPrev = ""; - var c = ""; - var cNext = ""; - for (var i = 0; i < code.length; i++) { - cPrev = c; - c = code.charAt(i); - cNext = code.charAt(i + 1); - - if (c == "/" && cNext == "*") { - result += "<span class=\"comment\">"; - echoChar(c); - echoChar(cNext); - for (i += 2; i < code.length; i++) { - c = code.charAt(i); - if (c == "\n") - result += "</span>"; - echoChar(c); - if (c == "\n") - result += "<span class=\"comment\">"; - if (cPrev == "*" && c == "/") - break; - cPrev = c; - } - result += "</span>"; - continue; - } else if (c == "/" && cNext == "/") { - result += "<span class=\"comment\">"; - echoChar(c); - echoChar(cNext); - for (i += 2; i < code.length; i++) { - c = code.charAt(i); - if (c == "\n") - break; - echoChar(c); - } - result += "</span>"; - echoChar(c); - continue; - } else if (c == "\"" || c == "'") { - var instringtype = c; - var stringstart = i; - result += "<span class=\"string\">"; - echoChar(c); - for (i += 1; i < code.length; i++) { - c = code.charAt(i); - if (stringstart < (i - 1) && cPrev == instringtype && code.charAt(i - 2) != "\\") - break; - echoChar(c); - cPrev = c; - } - result += "</span>"; - echoChar(c); - continue; - } else if (c == "0" && cNext == "x" && (i == 0 || (!isLetter(cPrev) && !isDigit(cPrev)))) { - result += "<span class=\"number\">"; - echoChar(c); - echoChar(cNext); - for (i += 2; i < code.length; i++) { - c = code.charAt(i); - if (!isHex(c)) - break; - echoChar(c); - } - result += "</span>"; - echoChar(c); - continue; - } else if ((isDigit(c) || ((c == "-" || c == ".") && isDigit(cNext))) && (i == 0 || (!isLetter(cPrev) && !isDigit(cPrev)))) { - result += "<span class=\"number\">"; - echoChar(c); - for (i += 1; i < code.length; i++) { - c = code.charAt(i); - if (!isDigit(c) && c != ".") - break; - echoChar(c); - } - result += "</span>"; - echoChar(c); - continue; - } else if (isLetter(c) && (i == 0 || !isLetter(cPrev))) { - var keyword = c; - var cj = ""; - for (var j = i + 1; j < i + 12 && j < code.length; j++) { - cj = code.charAt(j); - if (!isLetter(cj)) - break; - keyword += cj; - } - - if (keywords[keyword]) { - var functionName = ""; - var functionIsAnonymous = false; - if (keyword == "function") { - var functionKeywordOffset = 8; - for (var j = i + functionKeywordOffset; j < code.length; j++) { - cj = code.charAt(j); - if (cj == " ") - continue; - if (cj == "(") - break; - functionName += cj; - } - - if (!functionName.length) { - functionIsAnonymous = true; - var functionAssignmentFound = false; - var functionNameStart = -1; - var functionNameEnd = -1; - - for (var j = i - 1; j >= 0; j--) { - cj = code.charAt(j); - if (cj == ":" || cj == "=") { - functionAssignmentFound = true; - continue; - } - - var curCharIsSpace = (cj == " " || cj == "\t" || cj == "\n"); - if (functionAssignmentFound && functionNameEnd == -1 && !curCharIsSpace) { - functionNameEnd = j + 1; - } else if (!functionAssignmentFound && !curCharIsSpace) { - break; - } else if (functionNameEnd != -1 && curCharIsSpace) { - functionNameStart = j; - break; - } - } - - if (functionNameStart != -1 && functionNameEnd != -1) - functionName = code.substring(functionNameStart, functionNameEnd); - } - - if (!functionName.length) - functionName = "function"; - - file.functionNames.push(functionName); - } - - var fileIndex = filesLookup[file.url]; - - if (keyword == "function" && functionIsAnonymous) - result += "<span class=\"keyword\"><a name=\"function-" + fileIndex + "-" + file.functionNames.length + "\" id=\"" + fileIndex + "-" + file.functionNames.length + "\">" + keyword + "</a></span>"; - else - result += "<span class=\"keyword\">" + keyword + "</span>"; - - if (functionName.length && !functionIsAnonymous) { - result += " <a name=\"function-" + fileIndex + "-" + file.functionNames.length + "\" id=\"" + fileIndex + "-" + file.functionNames.length + "\">" + functionName + "</a>"; - i += keyword.length + functionName.length; - } else - i += keyword.length - 1; - - continue; - } - } - - echoChar(c); - } - - return result; -} - -function navFilePrevious(element) -{ - if (element.disabled) - return; - var lastFile = previousFiles.pop(); - if (currentFile != -1) - nextFiles.unshift(currentFile); - loadFile(lastFile, false); -} - -function navFileNext(element) -{ - if (element.disabled) - return; - var lastFile = nextFiles.shift(); - if (currentFile != -1) - previousFiles.push(currentFile); - loadFile(lastFile, false); -} - -function updateFunctionStack() -{ - var stackframeTable = document.getElementById("stackframeTable"); - stackframeTable.innerHTML = ""; // clear the content - - currentStack = new Array(); - var stack = DebuggerDocument.currentFunctionStack(); - for(var i = 0; i < stack.length; i++) { - var tr = document.createElement("tr"); - var td = document.createElement("td"); - td.className = "stackNumber"; - td.innerText = i; - tr.appendChild(td); - - td = document.createElement("td"); - td.innerText = stack[i]; - tr.appendChild(td); - tr.addEventListener("click", selectStackFrame, true); - - stackframeTable.appendChild(tr); - - var frame = new ScriptCallFrame(stack[i], i, tr); - tr.callFrame = frame; - currentStack.push(frame); - - if (i == 0) { - tr.addStyleClass("current"); - frame.loadVariables(); - currentCallFrame = frame; - } - } -} - -function selectStackFrame(event) -{ - var stackframeTable = document.getElementById("stackframeTable"); - var rows = stackframeTable.childNodes; - for (var i = 0; i < rows.length; i++) - rows[i].removeStyleClass("current"); - this.addStyleClass("current"); - this.callFrame.loadVariables(); - currentCallFrame = this.callFrame; - - if (frameLineNumberInfo = frameLineNumberStack[this.callFrame.index - 1]) - jumpToLine(frameLineNumberInfo[0], frameLineNumberInfo[1]); - else if (this.callFrame.index == 0) - jumpToLine(lastStatement[0], lastStatement[1]); -} - -function selectVariable(event) -{ - var variablesTable = document.getElementById("variablesTable"); - var rows = variablesTable.childNodes; - for (var i = 0; i < rows.length; i++) - rows[i].removeStyleClass("current"); - this.addStyleClass("current"); -} - -function switchFunction(index, shouldResetPopup) -{ - if (shouldResetPopup === undefined) shouldResetPopup = false; - var sourcesFrame = window.frames['sourcesFrame']; - - if (shouldResetPopup || index == 0) { - document.getElementById("functionPopupButtonContent").innerHTML = '<span class="placeholder"><No selected symbol></span>'; - return; - } - - var functionSelect = document.getElementById("functions"); - var selectedFunction = functionSelect.childNodes[index]; - var selection = sourcesFrame.getSelection(); - var currentFunction = selectedFunction.value; - var currentFunctionElement = sourcesFrame.document.getElementById(currentFunction); - - functionSelect.blur(); - sourcesFrame.focus(); - selection.setBaseAndExtent(currentFunctionElement, 0, currentFunctionElement, 1); - sourcesFrame.location.hash = "#function-" + selectedFunction.value; - document.getElementById("functionPopupButtonContent").innerText = selectedFunction.innerText; -} - -function loadFile(fileIndex, manageNavLists) -{ - var file = files[fileIndex]; - if (!file) - return; - - if (currentFile != -1 && files[currentFile] && files[currentFile].element) - files[currentFile].element.style.display = "none"; - - if (!file.loaded) { - var sourcesDocument = document.getElementById("sources").contentDocument; - var sourcesDiv = sourcesDocument.body; - var sourceDiv = sourcesDocument.createElement("div"); - sourceDiv.id = "file" + fileIndex; - sourcesDiv.appendChild(sourceDiv); - file.element = sourceDiv; - - var table = sourcesDocument.createElement("table"); - sourceDiv.appendChild(table); - - var normalizedSource = file.source.replace(/\r\n|\r/g, "\n"); // normalize line endings - var lines = syntaxHighlight(normalizedSource, file).split("\n"); - for( var i = 0; i < lines.length; i++ ) { - var tr = sourcesDocument.createElement("tr"); - var td = sourcesDocument.createElement("td"); - td.className = "gutter"; - td.title = (i + 1); - td.addEventListener("click", breakpointAction, true); - td.addEventListener("dblclick", function(event) { toggleBreakpointEditorOnLine(event.target.title); }, true); - td.addEventListener("mousedown", moveBreakPoint, true); - tr.appendChild(td); - - td = sourcesDocument.createElement("td"); - td.className = "source"; - td.innerHTML = (lines[i].length ? lines[i] : " "); - tr.appendChild(td); - table.appendChild(tr); - } - - file.loaded = true; - } - - file.element.style.removeProperty("display"); - - document.getElementById("filesPopupButtonContent").innerText = (file.url ? file.url : "(unknown script)"); - - var filesSelect = document.getElementById("files"); - for (var i = 0; i < filesSelect.childNodes.length; i++) { - if (filesSelect.childNodes[i].value == fileIndex) { - filesSelect.selectedIndex = i; - break; - } - } - - // Populate the function names pop-up - if (file.functionNames.length > 0) { - var functionSelect = document.getElementById("functions"); - var functionOption = document.createElement("option"); - - document.getElementById("functionNamesPopup").style.display = "inline"; - switchFunction(0, true); - - functionSelect.removeChildren(); - functionOption.value = null; - functionOption.text = "<No selected symbol>"; - functionSelect.appendChild(functionOption); - - for (var i = 0; i < file.functionNames.length; i++) { - functionOption = document.createElement("option"); - functionOption.value = fileIndex + "-" + (i+1); - functionOption.text = file.functionNames[i] + "()"; - functionSelect.appendChild(functionOption); - } - } else - document.getElementById("functionNamesPopup").style.display = "none"; - - if (manageNavLists) { - nextFiles = new Array(); - if (currentFile != -1) - previousFiles.push(currentFile); - } - - document.getElementById("navFileLeftButton").disabled = (previousFiles.length == 0); - document.getElementById("navFileRightButton").disabled = (nextFiles.length == 0); - - //Remember and recall scroll position for current file and file we just loaded - var frameBody = document.getElementById("sources").contentDocument.body; - if (currentFile != -1) - files[currentFile].scrollPosition = frameBody.scrollTop; - frameBody.scrollTop = file.scrollPosition; - frameBody.scrollLeft = 0; - - currentFile = fileIndex; -} - -function updateFileSource(source, url, force) -{ - var fileIndex = filesLookup[url]; - if (!fileIndex || !source.length) - return; - - var file = files[fileIndex]; - if (force || file.source.length != source.length || file.source != source) { - file.source = source; - file.loaded = false; - - if (file.element) { - file.element.parentNode.removeChild(file.element); - file.element = null; - } - - if (currentFile == fileIndex || force) - loadFile(fileIndex, false); - } -} - -/** -* ParsedURL - this object chops up full URL into two parts: - * 1) The domain: everything from http:// to the end of the domain name - * 2) The relative path: everything after the domain - * - * @param string url URL to be processed - */ -function ParsedURL(url) -{ - // Since we're getting the URL from the browser, we're safe to assume the URL is already well formatted - // and so there is no need for more sophisticated regular expression here - var url_parts = ((url.substring(0,4)).toLowerCase() == "file") ? url.match(/(file:[\/]{2,3}(\w|\.|-|_|\/|\%|\:)+)\/(.*)/) : url.match(/(http[s]?:\/\/(www)?\.?(\w|\.|-)+\w(:\d{1,5})?)\/?(.*)/); - // the domain here is considered the whole http://www.example.org:8000 or file:///Users/user/folder/file.htm string for display purposes - this.domain = url_parts[1]; - // the relative path is everything following the domain - this.relativePath = (url_parts[5] === undefined) ? "/" + url_parts[3] : "/" + url_parts[5]; -} - -/** -* SiteBrowser - modifies the file tree via DOM as new files are being open - * - */ -function SiteBrowser() -{ - var fileBrowser = document.getElementById("filesBrowserSites"); - - this.addURL = function add(url, fileIndex) - { - var parsedURL = new ParsedURL(url); - var divs = fileBrowser.getElementsByTagName("div"); - - if (divs.length == 0) { - addNewDomain(parsedURL, fileIndex); - } else { - var isNew = true; - for (var i = 0; i < divs.length; i++) { - if (divs[i].id == parsedURL.domain) { - var uls = divs[i].getElementsByTagName("ul"); - var ul = (uls.length > 0) ? uls[0] : document.createElement("ul"); - var li = document.createElement("li"); - - li.id = fileIndex; - li.addEventListener("click", fileBrowserMouseEvents, false); - li.title = li.innerText = parsedURL.relativePath ? parsedURL.relativePath : "/"; - ul.appendChild(li); - isNew = false; - break; - } - } - if (isNew) { - addNewDomain(parsedURL, fileIndex); - } - } - } - - this.selectInitialFile = function sf() - { - if (currentFile == -1) - document.getElementById("1").className = "active"; - } - - function addNewDomain(parsedURL, fileIndex) - { - var div = document.createElement("div"); - var ul = document.createElement("ul"); - var li = document.createElement("li"); - - div.id = div.innerText = div.title = parsedURL.domain; - div.addEventListener("click", fileBrowserMouseEvents, false); - // Maybe we can add some roll-overs here... - //div.addEventListener("mouseover", fileBrowserMouseEvents, false); - //div.addEventListener("mouseout", fileBrowserMouseEvents, false); - li.id = fileIndex; - li.addEventListener("click", fileBrowserMouseEvents, false); - li.title = li.innerText = parsedURL.relativePath ? parsedURL.relativePath : "/"; - ul.appendChild(li); - div.appendChild(ul); - fileBrowser.appendChild(div); - } - - function removeFile(fileIndex) - { - var theFile = document.getElementById(fileIndex); - // If we are removing the last file from its site, go ahead and remove the whole site - if (theFile.parentNode.childNodes.length < 2) { - var theSite = theFile.parentNode.parentNode; - theSite.removeChildren(); - theSite.parentNode.removeChild(theSite); - } - else - theFile.parentNode.removeChild(theFile); - } -} - -function fileBrowserMouseEvents(event) -{ - switch (event.type) - { - case "click": - // If we clicked on a site, collapse/expand it, if on a file, display it. Since we're only capturing this - // event from either a DIV or LI element, we don't have to worry about any ambiguity - (event.target.nodeName.toUpperCase() == "DIV") ? toggleCollapseSite(event) : fileClicked(event.target.id); - break; - } -} - -function fileClicked(fileId, shouldLoadFile) -{ - if (shouldLoadFile === undefined) - shouldLoadFile = true; - if (currentFile != -1) - document.getElementById(currentFile).className = "passive"; - document.getElementById(fileId).className = "active"; - if (shouldLoadFile) - loadFile(fileId, false); -} - -function toggleCollapseSite(event) -{ - var thisSite = document.getElementById(event.target.id); - var siteFiles = thisSite.getElementsByTagName("ul"); - - if (siteFiles[0].style.display == "block" || !siteFiles[0].style.display) { - siteFiles[0].style.display = "none"; - thisSite.className = "collapsed"; - } else { - siteFiles[0].style.display = "block"; - thisSite.className = "expanded"; - } -} - -function didParseScript(source, fileSource, url, sourceId, baseLineNumber) -{ - var fileIndex = filesLookup[url]; - var file = files[fileIndex]; - var firstLoad = false; - - if (!fileIndex || !file) { - fileIndex = files.length + 1; - if (url.length) - filesLookup[url] = fileIndex; - - file = new Object(); - file.scripts = new Array(); - file.breakpoints = new Array(); - file.functionNames = new Array(); - file.source = (fileSource.length ? fileSource : source); - file.url = (url.length ? url : null); - file.loaded = false; - - files[fileIndex] = file; - - var filesSelect = document.getElementById("files"); - var option = document.createElement("option"); - files[fileIndex].menuOption = option; - option.value = fileIndex; - option.text = (file.url ? file.url : "(unknown script)"); - filesSelect.appendChild(option); - - var siteBrowser = new SiteBrowser(); - siteBrowser.addURL(file.url, fileIndex); - siteBrowser.selectInitialFile(); - - firstLoad = true; - } - - var sourceObj = new Object(); - sourceObj.file = fileIndex; - sourceObj.baseLineNumber = baseLineNumber; - file.scripts.push(sourceId); - scripts[sourceId] = sourceObj; - - if (!firstLoad) - updateFileSource((fileSource.length ? fileSource : source), url, false); - - if (currentFile == -1) - loadFile(fileIndex, false); -} - -function jumpToLine(sourceId, line) -{ - var script = scripts[sourceId]; - if (line <= 0 || !script) - return; - - var file = files[script.file]; - if (!file) - return; - - if (currentFile != script.file) - loadFile(script.file, true); - if (currentRow) - currentRow.removeStyleClass("current"); - if (!file.element) - return; - if (line > file.element.firstChild.childNodes.length) - return; - - currentRow = file.element.firstChild.childNodes.item(line - 1); - if (!currentRow) - return; - - currentRow.addStyleClass("current"); - - var sourcesDiv = document.getElementById("sources"); - var sourcesDocument = document.getElementById("sources").contentDocument; - var parent = sourcesDocument.body; - var offset = totalOffsetTop(currentRow, parent); - if (offset < (parent.scrollTop + 20) || offset > (parent.scrollTop + sourcesDiv.clientHeight - 20)) - parent.scrollTop = totalOffsetTop(currentRow, parent) - (sourcesDiv.clientHeight / 2) + 10; -} - -function willExecuteStatement(sourceId, line, fromLeavingFrame) -{ - var script = scripts[sourceId]; - if (line <= 0 || !script) - return; - - var file = files[script.file]; - if (!file) - return; - - lastStatement = [sourceId, line]; - - var breakpoint = file.breakpoints[line]; - - var shouldBreak = false; - - if (breakpoint && breakpoint.enabled) { - switch(breakpoint.type) { - case 0: - shouldBreak = (breakpoint.value == "break" || DebuggerDocument.evaluateScript(breakpoint.value, 0) == 1); - if (shouldBreak) - breakpoint.hitcount++; - break; - case 1: - var message = "Hit breakpoint on line " + line; - if (breakpoint.value != "break") - message = DebuggerDocument.evaluateScript(breakpoint.value, 0); - if (consoleWindow) - consoleWindow.appendMessage("", message); - breakpoint.hitcount++; - break; - } - var editor = breakpoint.editor; - var counter = null; - if (editor) - counter = breakpoint.editor.query('.//span[@class="hitCounter"]'); - if (counter) - counter.innerText = breakpoint.hitcount; - } - - if (pauseOnNextStatement || shouldBreak || (steppingOver && !steppingStack)) { - pause(); - pauseOnNextStatement = false; - pausedWhileLeavingFrame = fromLeavingFrame || false; - } - - if (isPaused) { - updateFunctionStack(); - jumpToLine(sourceId, line); - } -} - -function didEnterCallFrame(sourceId, line) -{ - if (steppingOver || steppingOut) - steppingStack++; - - if (lastStatement) - frameLineNumberStack.unshift(lastStatement); - willExecuteStatement(sourceId, line); -} - -function willLeaveCallFrame(sourceId, line) -{ - if (line <= 0) - resume(); - willExecuteStatement(sourceId, line, true); - frameLineNumberStack.shift(); - if (!steppingStack) - steppingOver = false; - if (steppingOut && !steppingStack) { - steppingOut = false; - pauseOnNextStatement = true; - } - if ((steppingOver || steppingOut) && steppingStack >= 1) - steppingStack--; -} - -function exceptionWasRaised(sourceId, line) -{ - pause(); - updateFunctionStack(); - jumpToLine(sourceId, line); -} - -function showConsoleWindow() -{ - if (!consoleWindow) - consoleWindow = window.open("console.html", "console", "top=200, left=200, width=500, height=300, toolbar=yes, resizable=yes"); - else - consoleWindow.focus(); -} - -function closeFile(fileIndex) -{ - if (fileIndex != -1) { - currentFile = -1; - var file = files[fileIndex]; - var sourcesDocument = document.getElementById("sources").contentDocument; - // Clean up our file's content - sourcesDocument.getElementById("file" + fileIndex).removeChildren(); - // Remove the file from the open files pool - delete sourcesDocument.getElementById("file" + fileIndex); - - var filesSelect = document.getElementById("files"); - // Select the next loaded file. If we're at the end of the list, loop back to beginning. - var nextSelectedFile = (filesSelect.selectedIndex + 1 >= filesSelect.options.length) ? 0 : filesSelect.selectedIndex; - // Remove the file from file lists - filesSelect.options[filesSelect.selectedIndex] = null; - SiteBrowser.removeFile(fileIndex); - delete files[fileIndex]; - - // Clean up the function list - document.getElementById("functions").removeChildren(); - - // Display appropriate place-holders, if we closed all files - if (filesSelect.options.length < 1) { - document.getElementById("filesPopupButtonContent").innerHTML = "<span class='placeholder'><No files loaded></span>"; - document.getElementById("functionNamesPopup").style.display = "none"; - } - else - switchFile(nextSelectedFile); - } -} - -function closeCurrentFile() -{ - closeFile(currentFile); -} diff --git a/WebKitTools/Drosera/mac/DebuggerApplication.h b/WebKitTools/Drosera/mac/DebuggerApplication.h deleted file mode 100644 index 4722437..0000000 --- a/WebKitTools/Drosera/mac/DebuggerApplication.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -@interface DebuggerApplication : NSObject { - NSMutableDictionary *knownServerNames; - IBOutlet NSPanel *attachWindow; - IBOutlet NSTableView *attachTable; - IBOutlet NSButton *attachButton; -} -- (IBAction)showAttachPanel:(id)sender; -- (IBAction)attach:(id)sender; - -- (NSDictionary *)knownServers; -@end diff --git a/WebKitTools/Drosera/mac/DebuggerApplication.mm b/WebKitTools/Drosera/mac/DebuggerApplication.mm deleted file mode 100644 index 35cfa24..0000000 --- a/WebKitTools/Drosera/mac/DebuggerApplication.mm +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "config.h" -#import "DebuggerApplication.h" - -#import "DebuggerClient.h" -#import "ServerConnection.h" - -#import <WebKit/WebCoreStatistics.h> - -@implementation DebuggerApplication -- (void)awakeFromNib -{ - NSTableColumn *column = [attachTable tableColumnWithIdentifier:@"name"]; - NSBrowserCell *cell = [[NSBrowserCell alloc] init]; - [cell setLeaf:YES]; - [column setDataCell:cell]; - [cell release]; -} - -- (void)applicationDidFinishLaunching:(NSNotification *)notification -{ - [WebCoreStatistics setShouldPrintExceptions:YES]; - - knownServerNames = [[NSMutableDictionary alloc] init]; - - [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(serverLoaded:) name:WebScriptDebugServerDidLoadNotification object:nil]; - [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(serverLoaded:) name:WebScriptDebugServerQueryReplyNotification object:nil]; - [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(serverUnloaded:) name:WebScriptDebugServerWillUnloadNotification object:nil]; - [[NSDistributedNotificationCenter defaultCenter] postNotificationName:WebScriptDebugServerQueryNotification object:nil]; - - [self showAttachPanel:nil]; -} - -#pragma mark - -#pragma mark Server Detection Callbacks - -- (void)serverLoaded:(NSNotification *)notification -{ - int processId = [[[notification userInfo] objectForKey:WebScriptDebugServerProcessIdentifierKey] intValue]; - if (processId == [[NSProcessInfo processInfo] processIdentifier]) - return; - - NSMutableDictionary *info = [[notification userInfo] mutableCopy]; - if (!info) - return; - [knownServerNames setObject:info forKey:[notification object]]; - [info release]; - - [attachTable reloadData]; -} - -- (void)serverUnloaded:(NSNotification *)notification -{ - [knownServerNames removeObjectForKey:[notification object]]; - [attachTable reloadData]; -} - -- (NSDictionary *)knownServers -{ - return knownServerNames; -} - -#pragma mark - -#pragma mark Attach Panel Actions - -- (IBAction)showAttachPanel:(id)sender -{ - if (![attachWindow isVisible]) - [attachWindow center]; - [attachTable reloadData]; - [attachTable setTarget:self]; - [attachTable setDoubleAction:@selector(attach:)]; - [attachWindow makeKeyAndOrderFront:sender]; -} - -- (IBAction)attach:(id)sender -{ - if ([[attachTable selectedRowIndexes] count] != 1) - return; - - [attachWindow orderOut:sender]; - - unsigned int row = [[attachTable selectedRowIndexes] firstIndex]; - NSString *key = [[knownServerNames allKeys] objectAtIndex:row]; - - DebuggerClient *document = [[DebuggerClient alloc] initWithServerName:key]; - [document showWindow:sender]; -} - -#pragma mark - -#pragma mark Table View Delegate - -- (int)numberOfRowsInTableView:(NSTableView *)tableView -{ - return [knownServerNames count]; -} - -- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row -{ - return @""; -} - -- (void)tableView:(NSTableView *)tableView willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn row:(int)row -{ - NSString *key = [[knownServerNames allKeys] objectAtIndex:row]; - NSMutableDictionary *info = [knownServerNames objectForKey:key]; - NSString *processName = [info objectForKey:WebScriptDebugServerProcessNameKey]; - NSImage *icon = [info objectForKey:@"icon"]; - - if (!icon) { - NSString *path = [[NSWorkspace sharedWorkspace] fullPathForApplication:processName]; - if (path) icon = [[NSWorkspace sharedWorkspace] iconForFile:path]; - if (!icon) icon = [[NSWorkspace sharedWorkspace] iconForFileType:@"app"]; - if (icon) [info setObject:icon forKey:@"icon"]; - [icon setScalesWhenResized:YES]; - [icon setSize:NSMakeSize(32, 32)]; - } - - [cell setImage:icon]; - [cell setTitle:processName]; -} - -- (void)tableViewSelectionDidChange:(NSNotification *)notification -{ - [attachButton setEnabled:([[attachTable selectedRowIndexes] count])]; -} -@end diff --git a/WebKitTools/Drosera/mac/DebuggerClient.h b/WebKitTools/Drosera/mac/DebuggerClient.h deleted file mode 100644 index 808d331..0000000 --- a/WebKitTools/Drosera/mac/DebuggerClient.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -class DebuggerDocument; - -@class ServerConnection; -@class WebView; - -@interface DebuggerClient : NSWindowController -{ - IBOutlet WebView *webView; - BOOL webViewLoaded; - DebuggerDocument* debuggerDocument; - ServerConnection *server; -} - -- (id)initWithServerName:(NSString *)serverConn; -- (IBAction)pause:(id)sender; -- (IBAction)resume:(id)sender; -- (IBAction)stepInto:(id)sender; -- (IBAction)stepOver:(id)sender; -- (IBAction)stepOut:(id)sender; -- (IBAction)showConsole:(id)sender; -- (IBAction)closeCurrentFile:(id)sender; - -@end diff --git a/WebKitTools/Drosera/mac/DebuggerClient.mm b/WebKitTools/Drosera/mac/DebuggerClient.mm deleted file mode 100644 index 71cfa8b..0000000 --- a/WebKitTools/Drosera/mac/DebuggerClient.mm +++ /dev/null @@ -1,387 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "config.h" -#import "DebuggerClient.h" - -#import "DebuggerApplication.h" -#import "DebuggerDocument.h" -#import "ServerConnection.h" - -#import <JavaScriptCore/JSContextRef.h> - -static NSString *DebuggerConsoleToolbarItem = @"DebuggerConsoleToolbarItem"; -static NSString *DebuggerContinueToolbarItem = @"DebuggerContinueToolbarItem"; -static NSString *DebuggerPauseToolbarItem = @"DebuggerPauseToolbarItem"; -static NSString *DebuggerStepIntoToolbarItem = @"DebuggerStepIntoToolbarItem"; -static NSString *DebuggerStepOverToolbarItem = @"DebuggerStepOverToolbarItem"; -static NSString *DebuggerStepOutToolbarItem = @"DebuggerStepOutToolbarItem"; - -@implementation DebuggerClient -+ (BOOL)isSelectorExcludedFromWebScript:(SEL)aSelector -{ - return NO; -} - -+ (BOOL)isKeyExcludedFromWebScript:(const char *)name -{ - return NO; -} - -#pragma mark - - -- (id)initWithServerName:(NSString *)serverName; -{ - if ((self = [super init])) { - server = [[ServerConnection alloc] initWithServerName:serverName]; - debuggerDocument = new DebuggerDocument(server); - } - - return self; -} - -- (void)dealloc -{ - delete debuggerDocument; - [server release]; - [super dealloc]; -} - -#pragma mark - -#pragma mark Interface Actions - -- (IBAction)pause:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "pause", 0, 0); -} - -- (IBAction)resume:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "resume", 0, 0); -} - -- (IBAction)stepInto:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "stepInto", 0, 0); -} - -- (IBAction)stepOver:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "stepOver", 0, 0); -} - -- (IBAction)stepOut:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "stepOut", 0, 0); -} - -- (IBAction)showConsole:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "showConsoleWindow", 0, 0); -} - -- (IBAction)closeCurrentFile:(id)sender -{ - DebuggerDocument::callGlobalFunction([[webView mainFrame] globalContext], "closeCurrentFile", 0, 0); -} - -#pragma mark - -#pragma mark Window Controller Overrides - -- (NSString *)windowNibName -{ - return @"Debugger"; -} - -- (void)windowDidLoad -{ - [super windowDidLoad]; - - NSString *path = [[NSBundle mainBundle] pathForResource:@"debugger" ofType:@"html" inDirectory:nil]; - [[webView mainFrame] loadRequest:[[[NSURLRequest alloc] initWithURL:[NSURL fileURLWithPath:path]] autorelease]]; - - NSToolbar *toolbar = [[NSToolbar alloc] initWithIdentifier:@"debugger"]; - [toolbar setDelegate:self]; - [toolbar setAllowsUserCustomization:YES]; - [toolbar setAutosavesConfiguration:YES]; - [[self window] setToolbar:toolbar]; - [toolbar release]; -} - -- (void)windowWillClose:(NSNotification *)notification -{ - [[webView windowScriptObject] removeWebScriptKey:@"DebuggerDocument"]; - - [server switchToServerNamed:nil]; - - [self autorelease]; // DebuggerApplication expects us to release on close -} - -#pragma mark - -#pragma mark Toolbar Delegate - -- (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag -{ - if ([itemIdentifier isEqualToString:DebuggerContinueToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Continue"]; - [item setPaletteLabel:@"Continue"]; - - [item setToolTip:@"Continue script execution"]; - [item setImage:[NSImage imageNamed:@"continue"]]; - - [item setTarget:self]; - [item setAction:@selector(resume:)]; - - return [item autorelease]; - } else if ([itemIdentifier isEqualToString:DebuggerConsoleToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Console"]; - [item setPaletteLabel:@"Console"]; - - [item setToolTip:@"Console"]; - [item setImage:[NSImage imageNamed:@"console"]]; - - [item setTarget:self]; - [item setAction:@selector(showConsole:)]; - - return [item autorelease]; - } else if ([itemIdentifier isEqualToString:DebuggerPauseToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Pause"]; - [item setPaletteLabel:@"Pause"]; - - [item setToolTip:@"Pause script execution"]; - [item setImage:[NSImage imageNamed:@"pause"]]; - - [item setTarget:self]; - [item setAction:@selector(pause:)]; - - return [item autorelease]; - } else if ([itemIdentifier isEqualToString:DebuggerStepIntoToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Step Into"]; - [item setPaletteLabel:@"Step Into"]; - - [item setToolTip:@"Step into function call"]; - [item setImage:[NSImage imageNamed:@"step"]]; - - [item setTarget:self]; - [item setAction:@selector(stepInto:)]; - - return [item autorelease]; - } else if ([itemIdentifier isEqualToString:DebuggerStepOverToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Step Over"]; - [item setPaletteLabel:@"Step Over"]; - - [item setToolTip:@"Step over function call"]; - [item setImage:[NSImage imageNamed:@"stepOver"]]; - - [item setTarget:self]; - [item setAction:@selector(stepOver:)]; - - return [item autorelease]; - } else if ([itemIdentifier isEqualToString:DebuggerStepOutToolbarItem]) { - NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - - [item setLabel:@"Step Out"]; - [item setPaletteLabel:@"Step Over"]; - - [item setToolTip:@"Step out of current function"]; - [item setImage:[NSImage imageNamed:@"stepOut"]]; - - [item setTarget:self]; - [item setAction:@selector(stepOut:)]; - - return [item autorelease]; - } - - return nil; -} - -- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)toolbar -{ - return [NSArray arrayWithObjects:DebuggerContinueToolbarItem, DebuggerPauseToolbarItem, - NSToolbarSeparatorItemIdentifier, DebuggerStepIntoToolbarItem, DebuggerStepOutToolbarItem, - DebuggerStepOverToolbarItem, NSToolbarFlexibleSpaceItemIdentifier, DebuggerConsoleToolbarItem, nil]; -} - -- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar*)toolbar -{ - return [NSArray arrayWithObjects:DebuggerConsoleToolbarItem, DebuggerContinueToolbarItem, DebuggerPauseToolbarItem, - DebuggerStepIntoToolbarItem, DebuggerStepOutToolbarItem, DebuggerStepOverToolbarItem, NSToolbarCustomizeToolbarItemIdentifier, - NSToolbarFlexibleSpaceItemIdentifier, NSToolbarSpaceItemIdentifier, NSToolbarSeparatorItemIdentifier, nil]; -} - -- (BOOL)validateUserInterfaceItem:(id <NSValidatedUserInterfaceItem>)interfaceItem -{ - SEL action = [interfaceItem action]; - if (action == @selector(pause:)) { - if (!webViewLoaded) - return NO; - - return !debuggerDocument->isPaused([[webView mainFrame] globalContext]); - } - if (action == @selector(resume:) || - action == @selector(stepOver:) || - action == @selector(stepOut:) || - action == @selector(stepInto:)) { - if (!webViewLoaded) - return YES; - - return debuggerDocument->isPaused([[webView mainFrame] globalContext]); - } - return YES; -} - -#pragma mark - -#pragma mark WebView UI Delegate - -- (WebView *)webView:(WebView *)sender createWebViewWithRequest:(NSURLRequest *)request -{ - WebView *newWebView = [[WebView alloc] initWithFrame:NSZeroRect frameName:nil groupName:nil]; - [newWebView setAutoresizingMask:(NSViewWidthSizable | NSViewHeightSizable)]; - [newWebView setUIDelegate:self]; - [newWebView setPolicyDelegate:self]; - [newWebView setFrameLoadDelegate:self]; - if (request) - [[newWebView mainFrame] loadRequest:request]; - - NSWindow *window = [[NSWindow alloc] initWithContentRect:NSZeroRect styleMask:(NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask | NSUnifiedTitleAndToolbarWindowMask) backing:NSBackingStoreBuffered defer:NO screen:[[webView window] screen]]; - [window setReleasedWhenClosed:YES]; - [newWebView setFrame:[[window contentView] frame]]; - [[window contentView] addSubview:newWebView]; - [newWebView release]; - - return newWebView; -} - -- (void)webViewShow:(WebView *)sender -{ - [[sender window] makeKeyAndOrderFront:sender]; -} - -- (BOOL)webViewAreToolbarsVisible:(WebView *)sender -{ - return [[[sender window] toolbar] isVisible]; -} - -- (void)webView:(WebView *)sender setToolbarsVisible:(BOOL)visible -{ - [[[sender window] toolbar] setVisible:visible]; -} - -- (void)webView:(WebView *)sender setResizable:(BOOL)resizable -{ - [[sender window] setShowsResizeIndicator:resizable]; - [[[sender window] standardWindowButton:NSWindowZoomButton] setEnabled:resizable]; -} - -- (void)webView:(WebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame -{ - NSRange range = [message rangeOfString:@"\t"]; - NSString *title = @"Alert"; - if (range.location != NSNotFound) { - title = [message substringToIndex:range.location]; - message = [message substringFromIndex:(range.location + range.length)]; - } - - NSBeginInformationalAlertSheet(title, nil, nil, nil, [sender window], nil, NULL, NULL, NULL, message); -} - -- (void)scriptConfirmSheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(long *)contextInfo -{ - *contextInfo = returnCode; -} - -- (BOOL)webView:(WebView *)sender runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame -{ - NSRange range = [message rangeOfString:@"\t"]; - NSString *title = @"Alert"; - if (range.location != NSNotFound) { - title = [message substringToIndex:range.location]; - message = [message substringFromIndex:(range.location + range.length)]; - } - - long result = NSNotFound; - NSBeginInformationalAlertSheet(title, nil, @"Cancel", nil, [sender window], self, @selector(scriptConfirmSheetDidEnd:returnCode:contextInfo:), NULL, &result, message); - - while (result == NSNotFound) { - NSEvent *nextEvent = [[NSApplication sharedApplication] nextEventMatchingMask:NSAnyEventMask untilDate:[NSDate distantFuture] inMode:NSDefaultRunLoopMode dequeue:YES]; - [[NSApplication sharedApplication] sendEvent:nextEvent]; - } - - return result; -} - -#pragma mark - -#pragma mark WebView Frame Load Delegate - -- (void)webView:(WebView *)sender windowScriptObjectAvailable:(WebScriptObject *)windowScriptObject -{ - // note: this is the Debuggers's own WebView, not the one being debugged - JSContextRef context = [[webView mainFrame] globalContext]; - JSObjectRef globalObject = JSContextGetGlobalObject(context); - - debuggerDocument->windowScriptObjectAvailable(context, globalObject); -} - -- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame -{ - // note: this is the Debuggers's own WebView, not the one being debugged - if ([[sender window] isEqual:[self window]]) { - webViewLoaded = YES; - [server setGlobalContext:[[webView mainFrame] globalContext]]; - } -} - -- (void)webView:(WebView *)sender didReceiveTitle:(NSString *)title forFrame:(WebFrame *)frame -{ - // note: this is the Debuggers's own WebViews, not the one being debugged - if ([frame isEqual:[sender mainFrame]]) { - NSDictionary *info = [[(DebuggerApplication *)[[NSApplication sharedApplication] delegate] knownServers] objectForKey:[server currentServerName]]; - NSString *processName = [info objectForKey:WebScriptDebugServerProcessNameKey]; - if (info && [processName length]) { - NSMutableString *newTitle = [[NSMutableString alloc] initWithString:processName]; - [newTitle appendString:@" - "]; - [newTitle appendString:title]; - [[sender window] setTitle:newTitle]; - [newTitle release]; - } else - [[sender window] setTitle:title]; - } -} - -@end diff --git a/WebKitTools/Drosera/mac/DebuggerDocumentPlatform.mm b/WebKitTools/Drosera/mac/DebuggerDocumentPlatform.mm deleted file mode 100644 index b49338c..0000000 --- a/WebKitTools/Drosera/mac/DebuggerDocumentPlatform.mm +++ /dev/null @@ -1,205 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "config.h" -#import "DebuggerDocument.h" - -#import "DebuggerClient.h" -#import "ServerConnection.h" - -#import <JavaScriptCore/JSRetainPtr.h> -#import <JavaScriptCore/JSStringRefCF.h> -#import <JavaScriptCore/RetainPtr.h> - -// Converting string types -NSString* NSStringCreateWithJSStringRef(JSStringRef jsString) -{ - CFStringRef cfString = JSStringCopyCFString(kCFAllocatorDefault, jsString); - return (NSString *)cfString; -} - -JSValueRef JSValueRefCreateWithNSString(JSContextRef context, NSString* nsString) -{ - JSRetainPtr<JSStringRef> jsString(Adopt, JSStringCreateWithCFString((CFStringRef)nsString)); - return JSValueMakeString(context, jsString.get()); -} - -@interface NSString (WebScriptStringExtras) -+ (NSString *)stringOrNilFromWebScriptResult:(id)scriptResult; -@end - -@implementation NSString (WebScriptStringExtras) -+ (NSString *)stringOrNilFromWebScriptResult:(id)scriptResult -{ - NSString *ret = nil; - - if ([scriptResult isKindOfClass:NSClassFromString(@"WebScriptObject")]) - ret = [scriptResult callWebScriptMethod:@"toString" withArguments:nil]; - else if (scriptResult && ![scriptResult isKindOfClass:[NSString class]]) - ret = [scriptResult description]; - else if (scriptResult) - ret = scriptResult; - - return ret; -} -@end - -@interface WebScriptObject (WebScriptObjectExtras) -+ (NSArray *)webScriptAttributeKeys:(WebScriptObject *)object; -@end - -@implementation WebScriptObject (WebScriptObjectExtras) -+ (NSArray *)webScriptAttributeKeys:(WebScriptObject *)object; -{ - WebScriptObject *enumerateAttributes = [object evaluateWebScript:@"(function () { var result = new Array(); for (var x in this) { result.push(x); } return result; })"]; - - NSMutableArray *result = [[NSMutableArray alloc] init]; - WebScriptObject *variables = [enumerateAttributes callWebScriptMethod:@"call" withArguments:[NSArray arrayWithObject:object]]; - unsigned length = [[variables valueForKey:@"length"] intValue]; - for (unsigned i = 0; i < length; i++) { - NSString *key = [variables webScriptValueAtIndex:i]; - [result addObject:key]; - } - - [result sortUsingSelector:@selector(compare:)]; - return [result autorelease]; -} -@end - -// DebuggerDocument platform specific implementations - -void DebuggerDocument::platformPause() -{ - [m_server.get() pause]; -} - -void DebuggerDocument::platformResume() -{ - [m_server.get() resume]; -} - -void DebuggerDocument::platformStepInto() -{ - [m_server.get() stepInto]; -} - -JSValueRef DebuggerDocument::platformEvaluateScript(JSContextRef context, JSStringRef script, int callFrame) -{ - WebScriptCallFrame *cframe = [m_server.get() currentFrame]; - for (unsigned count = 0; count < callFrame; count++) - cframe = [cframe caller]; - - if (!cframe) - return JSValueMakeUndefined(context); - - RetainPtr<NSString> scriptNS(AdoptNS, NSStringCreateWithJSStringRef(script)); - id value = [cframe evaluateWebScript:scriptNS.get()]; - NSString *result = [NSString stringOrNilFromWebScriptResult:value]; - if (!result) - return JSValueMakeNull(context); - - return JSValueRefCreateWithNSString(context, result); -} - -void DebuggerDocument::getPlatformCurrentFunctionStack(JSContextRef context, Vector<JSValueRef>& currentStack) -{ - for (WebScriptCallFrame *frame = [m_server.get() currentFrame]; frame;) { - CFStringRef function; - if ([frame functionName]) - function = (CFStringRef)[frame functionName]; - else if ([frame caller]) - function = CFSTR("(anonymous function)"); - else - function = CFSTR("(global scope)"); - frame = [frame caller]; - - currentStack.append(JSValueRefCreateWithNSString(context, (NSString *)function)); - } -} - -void DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame(JSContextRef context, int callFrame, Vector<JSValueRef>& variableNames) -{ - WebScriptCallFrame *cframe = [m_server.get() currentFrame]; - for (unsigned count = 0; count < callFrame; count++) - cframe = [cframe caller]; - - if (!cframe) - return; - if (![[cframe scopeChain] count]) - return; - - WebScriptObject *scope = [[cframe scopeChain] objectAtIndex:0]; // local is always first - NSArray *localScopeVariableNames = [WebScriptObject webScriptAttributeKeys:scope]; - - for (int i = 0; i < [localScopeVariableNames count]; ++i) { - variableNames.append(JSValueRefCreateWithNSString(context, [localScopeVariableNames objectAtIndex:i])); - } -} - -JSValueRef DebuggerDocument::platformValueForScopeVariableNamed(JSContextRef context, JSStringRef key, int callFrame) -{ - WebScriptCallFrame *cframe = [m_server.get() currentFrame]; - for (unsigned count = 0; count < callFrame; count++) - cframe = [cframe caller]; - - if (!cframe) - return JSValueMakeUndefined(context); - - unsigned scopeCount = [[cframe scopeChain] count]; - - if (!scopeCount) - return JSValueMakeUndefined(context); - - NSString *resultString = nil; - - for (unsigned i = 0; i < scopeCount && resultString == nil; i++) { - WebScriptObject *scope = [[cframe scopeChain] objectAtIndex:i]; - - id value = nil; - @try { - RetainPtr<NSString> keyNS(AdoptNS, NSStringCreateWithJSStringRef(key)); - value = [scope valueForKey:keyNS.get()]; - } @catch(NSException* localException) { // The value wasn't found. - } - - resultString = [NSString stringOrNilFromWebScriptResult:value]; - } - - if (!resultString) - return JSValueMakeUndefined(context); - - return JSValueRefCreateWithNSString(context, resultString); -} - -void DebuggerDocument::platformLog(JSStringRef msg) -{ - RetainPtr<NSString> msgNS(AdoptNS, NSStringCreateWithJSStringRef(msg)); - NSLog(@"%@", msgNS.get()); -} - diff --git a/WebKitTools/Drosera/mac/Drosera.xcodeproj/project.pbxproj b/WebKitTools/Drosera/mac/Drosera.xcodeproj/project.pbxproj deleted file mode 100644 index 3ef8b64..0000000 --- a/WebKitTools/Drosera/mac/Drosera.xcodeproj/project.pbxproj +++ /dev/null @@ -1,659 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 42; - objects = { - -/* Begin PBXBuildFile section */ - 15CE85540ADBEA620078A734 /* fileIcon.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 15CE854F0ADBEA610078A734 /* fileIcon.jpg */; }; - 15CE85550ADBEA620078A734 /* siteCollapsed.tif in Resources */ = {isa = PBXBuildFile; fileRef = 15CE85500ADBEA610078A734 /* siteCollapsed.tif */; }; - 15CE85560ADBEA620078A734 /* siteExpanded.tif in Resources */ = {isa = PBXBuildFile; fileRef = 15CE85510ADBEA610078A734 /* siteExpanded.tif */; }; - 15CE85570ADBEA620078A734 /* siteIcon.tif in Resources */ = {isa = PBXBuildFile; fileRef = 15CE85520ADBEA610078A734 /* siteIcon.tif */; }; - 15CE85580ADBEA620078A734 /* SourceArrowOpen.png in Resources */ = {isa = PBXBuildFile; fileRef = 15CE85530ADBEA610078A734 /* SourceArrowOpen.png */; }; - 1C2632D30A4AF0A800EA7CD8 /* verticalSplitterBar.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 1C2632D10A4AF0A800EA7CD8 /* verticalSplitterBar.tiff */; }; - 1C2632D40A4AF0A800EA7CD8 /* verticalSplitterDimple.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 1C2632D20A4AF0A800EA7CD8 /* verticalSplitterDimple.tiff */; }; - 1C2632D70A4AF0B800EA7CD8 /* SourceArrow.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C2632D50A4AF0B800EA7CD8 /* SourceArrow.png */; }; - 1C2632D80A4AF0B800EA7CD8 /* SourceArrowBlank.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C2632D60A4AF0B800EA7CD8 /* SourceArrowBlank.png */; }; - 1C2632DA0A4AF0D200EA7CD8 /* background_stripe.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C2632D90A4AF0D200EA7CD8 /* background_stripe.png */; }; - 1C27ABC60A413B720016ECF4 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C27ABC50A413B720016ECF4 /* WebKit.framework */; }; - 1C27AC200A413D2D0016ECF4 /* debugger.html in Resources */ = {isa = PBXBuildFile; fileRef = 1C27AC1F0A413D2D0016ECF4 /* debugger.html */; }; - 1C27B1260A421D870016ECF4 /* debugger.js in Resources */ = {isa = PBXBuildFile; fileRef = 1C27AC230A413D660016ECF4 /* debugger.js */; }; - 1C3487980A81208400101C5C /* Drosera.icns in Resources */ = {isa = PBXBuildFile; fileRef = 1C3487970A81208400101C5C /* Drosera.icns */; }; - 1C4FF7440A44F52C0000D05D /* debugger.css in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FF7430A44F5260000D05D /* debugger.css */; }; - 1C4FF7540A44F6320000D05D /* gutter.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FF7530A44F6320000D05D /* gutter.png */; }; - 1C4FF9210A45F3520000D05D /* glossyHeader.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FF91F0A45F3520000D05D /* glossyHeader.png */; }; - 1C4FF94E0A45F5060000D05D /* popUpArrows.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FF94D0A45F5060000D05D /* popUpArrows.png */; }; - 1C4FFE5E0A466F5D0000D05D /* programCounterBreakPoint.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FFE5C0A466F5D0000D05D /* programCounterBreakPoint.tif */; }; - 1C4FFE5F0A466F5D0000D05D /* programCounterBreakPointDisabled.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1C4FFE5D0A466F5D0000D05D /* programCounterBreakPointDisabled.tif */; }; - 1C6F83FF0A58E97D004FCD89 /* stepOut.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1C6F83FE0A58E97D004FCD89 /* stepOut.tif */; }; - 1C6F84520A58EDFE004FCD89 /* console.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C6F84510A58EDFE004FCD89 /* console.png */; }; - 1C6F84550A58EE06004FCD89 /* console.css in Resources */ = {isa = PBXBuildFile; fileRef = 1C6F84530A58EE06004FCD89 /* console.css */; }; - 1C6F84560A58EE06004FCD89 /* console.html in Resources */ = {isa = PBXBuildFile; fileRef = 1C6F84540A58EE06004FCD89 /* console.html */; }; - 1C6F86730A59A18B004FCD89 /* console.js in Resources */ = {isa = PBXBuildFile; fileRef = 1C6F861F0A599F65004FCD89 /* console.js */; }; - 1C74F0350A47BF8300FEC632 /* viewer.html in Resources */ = {isa = PBXBuildFile; fileRef = 1C74F0340A47BF8300FEC632 /* viewer.html */; }; - 1C74F04B0A47BFE800FEC632 /* viewer.css in Resources */ = {isa = PBXBuildFile; fileRef = 1C74F03A0A47BFD600FEC632 /* viewer.css */; }; - 1C74F1850A47DEE600FEC632 /* DebuggerApplication.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1C74F1840A47DEE600FEC632 /* DebuggerApplication.mm */; }; - 1CC058EE0A44A210006FE533 /* breakPoint.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058B80A44A210006FE533 /* breakPoint.tif */; }; - 1CC058EF0A44A210006FE533 /* breakPointDisabled.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058B90A44A210006FE533 /* breakPointDisabled.tif */; }; - 1CC059020A44A210006FE533 /* glossyFooterFill.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058CC0A44A210006FE533 /* glossyFooterFill.tif */; }; - 1CC0590E0A44A210006FE533 /* navLeftDisabled.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058D80A44A210006FE533 /* navLeftDisabled.png */; }; - 1CC0590F0A44A210006FE533 /* navLeftNormal.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058D90A44A210006FE533 /* navLeftNormal.png */; }; - 1CC059100A44A210006FE533 /* navLeftPressed.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058DA0A44A210006FE533 /* navLeftPressed.png */; }; - 1CC059110A44A210006FE533 /* navRightDisabled.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058DB0A44A210006FE533 /* navRightDisabled.png */; }; - 1CC059120A44A210006FE533 /* navRightNormal.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058DC0A44A210006FE533 /* navRightNormal.png */; }; - 1CC059130A44A210006FE533 /* navRightPressed.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058DD0A44A210006FE533 /* navRightPressed.png */; }; - 1CC059160A44A210006FE533 /* programCounter.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E00A44A210006FE533 /* programCounter.tif */; }; - 1CC059170A44A210006FE533 /* splitterBar.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E10A44A210006FE533 /* splitterBar.tif */; }; - 1CC059180A44A210006FE533 /* splitterDimple.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E20A44A210006FE533 /* splitterDimple.tif */; }; - 1CC0591A0A44A210006FE533 /* continue.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E40A44A210006FE533 /* continue.tif */; }; - 1CC0591D0A44A210006FE533 /* pause.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E70A44A210006FE533 /* pause.tif */; }; - 1CC0591E0A44A210006FE533 /* run.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E80A44A210006FE533 /* run.tif */; }; - 1CC0591F0A44A210006FE533 /* step.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058E90A44A210006FE533 /* step.tif */; }; - 1CC059200A44A210006FE533 /* stepOver.tif in Resources */ = {isa = PBXBuildFile; fileRef = 1CC058EA0A44A210006FE533 /* stepOver.tif */; }; - 1CC059700A44A485006FE533 /* toolbarBackground.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CC0596F0A44A485006FE533 /* toolbarBackground.png */; }; - 1CD434B20A4B86F800A007AB /* glossyHeaderPressed.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CD434B10A4B86F800A007AB /* glossyHeaderPressed.png */; }; - 1CD8D5690A49041C00E5677B /* launcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 1CD8D5680A49041C00E5677B /* launcher.m */; }; - 1CD8D56C0A49043E00E5677B /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */; }; - 1CD8D5A60A49102900E5677B /* Drosera.app in Resources */ = {isa = PBXBuildFile; fileRef = 8D15AC370486D014006FF6A4 /* Drosera.app */; }; - 5D2C827F0A816BA700C193FD /* Drosera.icns in Resources */ = {isa = PBXBuildFile; fileRef = 1C3487970A81208400101C5C /* Drosera.icns */; }; - 63D54BD70AE600560064C440 /* breakpointeditor.png in Resources */ = {isa = PBXBuildFile; fileRef = 63D54BD60AE600560064C440 /* breakpointeditor.png */; }; - 63D54CBD0AE72C990064C440 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63D54CBC0AE72C990064C440 /* Carbon.framework */; }; - 63D54D7E0AE75CF10064C440 /* close_active.tif in Resources */ = {isa = PBXBuildFile; fileRef = 63D54D7B0AE75CF10064C440 /* close_active.tif */; }; - 63D54D7F0AE75CF10064C440 /* close_hover.tif in Resources */ = {isa = PBXBuildFile; fileRef = 63D54D7C0AE75CF10064C440 /* close_hover.tif */; }; - 63D54D800AE75CF10064C440 /* close.tif in Resources */ = {isa = PBXBuildFile; fileRef = 63D54D7D0AE75CF10064C440 /* close.tif */; }; - 63D54F780AE8280F0064C440 /* breakpointEditor.html in Resources */ = {isa = PBXBuildFile; fileRef = 63D54F770AE8280F0064C440 /* breakpointEditor.html */; }; - 8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */; }; - 8D15AC2E0486D014006FF6A4 /* Debugger.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B4FDCFA73011CA2CEA /* Debugger.nib */; }; - 8D15AC320486D014006FF6A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; - 8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */; }; - 957876850C9A226A008B6383 /* ServerConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 957876840C9A226A008B6383 /* ServerConnection.mm */; }; - 95B2A4500C95EECD00850C41 /* DebuggerClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95B2A44F0C95EECD00850C41 /* DebuggerClient.mm */; }; - 95B955250C975C7500AAB83B /* DebuggerDocumentPlatform.mm in Sources */ = {isa = PBXBuildFile; fileRef = 95B955240C975C7500AAB83B /* DebuggerDocumentPlatform.mm */; }; - D23E47C60C4460C600B7CD07 /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D23E47C50C4460C600B7CD07 /* JavaScriptCore.framework */; }; - D2D794FD0C4BED83004784F7 /* DebuggerDocument.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D2D794ED0C4BED83004784F7 /* DebuggerDocument.cpp */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 1CD8D5A90A49104E00E5677B /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 2A37F4A9FDCFA73011CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8D15AC270486D014006FF6A4; - remoteInfo = Drosera; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; }; - 13E42FBA07B3F13500E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; }; - 15CE854F0ADBEA610078A734 /* fileIcon.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; name = fileIcon.jpg; path = ../Images/fileIcon.jpg; sourceTree = SOURCE_ROOT; }; - 15CE85500ADBEA610078A734 /* siteCollapsed.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = siteCollapsed.tif; path = ../Images/siteCollapsed.tif; sourceTree = SOURCE_ROOT; }; - 15CE85510ADBEA610078A734 /* siteExpanded.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = siteExpanded.tif; path = ../Images/siteExpanded.tif; sourceTree = SOURCE_ROOT; }; - 15CE85520ADBEA610078A734 /* siteIcon.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = siteIcon.tif; path = ../Images/siteIcon.tif; sourceTree = SOURCE_ROOT; }; - 15CE85530ADBEA610078A734 /* SourceArrowOpen.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = SourceArrowOpen.png; path = ../Images/SourceArrowOpen.png; sourceTree = SOURCE_ROOT; }; - 1C2632D10A4AF0A800EA7CD8 /* verticalSplitterBar.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = verticalSplitterBar.tiff; path = ../Images/verticalSplitterBar.tiff; sourceTree = SOURCE_ROOT; }; - 1C2632D20A4AF0A800EA7CD8 /* verticalSplitterDimple.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = verticalSplitterDimple.tiff; path = ../Images/verticalSplitterDimple.tiff; sourceTree = SOURCE_ROOT; }; - 1C2632D50A4AF0B800EA7CD8 /* SourceArrow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = SourceArrow.png; path = ../Images/SourceArrow.png; sourceTree = SOURCE_ROOT; }; - 1C2632D60A4AF0B800EA7CD8 /* SourceArrowBlank.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = SourceArrowBlank.png; path = ../Images/SourceArrowBlank.png; sourceTree = SOURCE_ROOT; }; - 1C2632D90A4AF0D200EA7CD8 /* background_stripe.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = background_stripe.png; path = ../Images/background_stripe.png; sourceTree = SOURCE_ROOT; }; - 1C27ABC50A413B720016ECF4 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = /System/Library/Frameworks/WebKit.framework; sourceTree = "<absolute>"; }; - 1C27AC1F0A413D2D0016ECF4 /* debugger.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = debugger.html; path = ../debugger.html; sourceTree = SOURCE_ROOT; tabWidth = 8; usesTabs = 0; }; - 1C27AC230A413D660016ECF4 /* debugger.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = debugger.js; path = ../debugger.js; sourceTree = SOURCE_ROOT; tabWidth = 8; usesTabs = 0; }; - 1C3487970A81208400101C5C /* Drosera.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = Drosera.icns; path = ../Drosera.icns; sourceTree = SOURCE_ROOT; }; - 1C4FF7430A44F5260000D05D /* debugger.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = debugger.css; path = ../debugger.css; sourceTree = SOURCE_ROOT; tabWidth = 8; usesTabs = 0; }; - 1C4FF7530A44F6320000D05D /* gutter.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = gutter.png; path = ../Images/gutter.png; sourceTree = SOURCE_ROOT; }; - 1C4FF91F0A45F3520000D05D /* glossyHeader.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = glossyHeader.png; path = ../Images/glossyHeader.png; sourceTree = SOURCE_ROOT; }; - 1C4FF94D0A45F5060000D05D /* popUpArrows.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = popUpArrows.png; path = ../Images/popUpArrows.png; sourceTree = SOURCE_ROOT; }; - 1C4FFE5C0A466F5D0000D05D /* programCounterBreakPoint.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = programCounterBreakPoint.tif; path = ../Images/programCounterBreakPoint.tif; sourceTree = SOURCE_ROOT; }; - 1C4FFE5D0A466F5D0000D05D /* programCounterBreakPointDisabled.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = programCounterBreakPointDisabled.tif; path = ../Images/programCounterBreakPointDisabled.tif; sourceTree = SOURCE_ROOT; }; - 1C6F83FE0A58E97D004FCD89 /* stepOut.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = stepOut.tif; path = ../Images/stepOut.tif; sourceTree = SOURCE_ROOT; }; - 1C6F84510A58EDFE004FCD89 /* console.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = console.png; path = ../Images/console.png; sourceTree = SOURCE_ROOT; }; - 1C6F84530A58EE06004FCD89 /* console.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = console.css; path = ../console.css; sourceTree = SOURCE_ROOT; }; - 1C6F84540A58EE06004FCD89 /* console.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = console.html; path = ../console.html; sourceTree = SOURCE_ROOT; }; - 1C6F861F0A599F65004FCD89 /* console.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = console.js; path = ../console.js; sourceTree = SOURCE_ROOT; }; - 1C74F0340A47BF8300FEC632 /* viewer.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = viewer.html; path = ../viewer.html; sourceTree = SOURCE_ROOT; tabWidth = 8; usesTabs = 0; }; - 1C74F03A0A47BFD600FEC632 /* viewer.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = viewer.css; path = ../viewer.css; sourceTree = SOURCE_ROOT; tabWidth = 8; usesTabs = 0; }; - 1C74F1830A47DEE600FEC632 /* DebuggerApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebuggerApplication.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; - 1C74F1840A47DEE600FEC632 /* DebuggerApplication.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DebuggerApplication.mm; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; - 1CC058B80A44A210006FE533 /* breakPoint.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = breakPoint.tif; path = ../Images/breakPoint.tif; sourceTree = SOURCE_ROOT; }; - 1CC058B90A44A210006FE533 /* breakPointDisabled.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = breakPointDisabled.tif; path = ../Images/breakPointDisabled.tif; sourceTree = SOURCE_ROOT; }; - 1CC058CC0A44A210006FE533 /* glossyFooterFill.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = glossyFooterFill.tif; path = ../Images/glossyFooterFill.tif; sourceTree = SOURCE_ROOT; }; - 1CC058D80A44A210006FE533 /* navLeftDisabled.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navLeftDisabled.png; path = ../Images/navLeftDisabled.png; sourceTree = SOURCE_ROOT; }; - 1CC058D90A44A210006FE533 /* navLeftNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navLeftNormal.png; path = ../Images/navLeftNormal.png; sourceTree = SOURCE_ROOT; }; - 1CC058DA0A44A210006FE533 /* navLeftPressed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navLeftPressed.png; path = ../Images/navLeftPressed.png; sourceTree = SOURCE_ROOT; }; - 1CC058DB0A44A210006FE533 /* navRightDisabled.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navRightDisabled.png; path = ../Images/navRightDisabled.png; sourceTree = SOURCE_ROOT; }; - 1CC058DC0A44A210006FE533 /* navRightNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navRightNormal.png; path = ../Images/navRightNormal.png; sourceTree = SOURCE_ROOT; }; - 1CC058DD0A44A210006FE533 /* navRightPressed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = navRightPressed.png; path = ../Images/navRightPressed.png; sourceTree = SOURCE_ROOT; }; - 1CC058E00A44A210006FE533 /* programCounter.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = programCounter.tif; path = ../Images/programCounter.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E10A44A210006FE533 /* splitterBar.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = splitterBar.tif; path = ../Images/splitterBar.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E20A44A210006FE533 /* splitterDimple.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = splitterDimple.tif; path = ../Images/splitterDimple.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E40A44A210006FE533 /* continue.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = continue.tif; path = ../Images/continue.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E60A44A210006FE533 /* finishFunction.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = finishFunction.tif; sourceTree = "<group>"; }; - 1CC058E70A44A210006FE533 /* pause.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = pause.tif; path = ../Images/pause.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E80A44A210006FE533 /* run.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = run.tif; path = ../Images/run.tif; sourceTree = SOURCE_ROOT; }; - 1CC058E90A44A210006FE533 /* step.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = step.tif; path = ../Images/step.tif; sourceTree = SOURCE_ROOT; }; - 1CC058EA0A44A210006FE533 /* stepOver.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = stepOver.tif; path = ../Images/stepOver.tif; sourceTree = SOURCE_ROOT; }; - 1CC058EB0A44A210006FE533 /* stop.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = stop.tif; sourceTree = "<group>"; }; - 1CC0596F0A44A485006FE533 /* toolbarBackground.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = toolbarBackground.png; path = ../Images/toolbarBackground.png; sourceTree = SOURCE_ROOT; }; - 1CD434B10A4B86F800A007AB /* glossyHeaderPressed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = glossyHeaderPressed.png; path = ../Images/glossyHeaderPressed.png; sourceTree = SOURCE_ROOT; }; - 1CD8D54D0A4902B000E5677B /* DroseraLauncher.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DroseraLauncher.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 1CD8D54F0A4902B000E5677B /* LauncherInfo.plist */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = LauncherInfo.plist; sourceTree = "<group>"; }; - 1CD8D5680A49041C00E5677B /* launcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = launcher.m; sourceTree = "<group>"; }; - 2A37F4B0FDCFA73011CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; - 2A37F4B5FDCFA73011CA2CEA /* Debugger.nib */ = {isa = PBXFileReference; explicitFileType = wrapper.nib; name = Debugger.nib; path = ../English.lproj/Debugger.nib; sourceTree = "<group>"; }; - 2A37F4B7FDCFA73011CA2CEA /* MainMenu.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = MainMenu.nib; path = ../English.lproj/MainMenu.nib; sourceTree = "<group>"; }; - 2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; }; - 2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; }; - 63D54BD60AE600560064C440 /* breakpointeditor.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = breakpointeditor.png; path = ../Images/breakpointeditor.png; sourceTree = SOURCE_ROOT; }; - 63D54CBC0AE72C990064C440 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; }; - 63D54D7B0AE75CF10064C440 /* close_active.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = close_active.tif; path = ../Images/close_active.tif; sourceTree = SOURCE_ROOT; }; - 63D54D7C0AE75CF10064C440 /* close_hover.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = close_hover.tif; path = ../Images/close_hover.tif; sourceTree = SOURCE_ROOT; }; - 63D54D7D0AE75CF10064C440 /* close.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = close.tif; path = ../Images/close.tif; sourceTree = SOURCE_ROOT; }; - 63D54F770AE8280F0064C440 /* breakpointEditor.html */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.html; name = breakpointEditor.html; path = ../breakpointEditor.html; sourceTree = SOURCE_ROOT; }; - 8D15AC360486D014006FF6A4 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; }; - 8D15AC370486D014006FF6A4 /* Drosera.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Drosera.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 957876760C9A221B008B6383 /* ServerConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServerConnection.h; sourceTree = "<group>"; }; - 957876840C9A226A008B6383 /* ServerConnection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ServerConnection.mm; sourceTree = "<group>"; }; - 957879610C9B37BC008B6383 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = config.h; path = ../config.h; sourceTree = SOURCE_ROOT; }; - 95B2A44E0C95EECD00850C41 /* DebuggerClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebuggerClient.h; sourceTree = "<group>"; }; - 95B2A44F0C95EECD00850C41 /* DebuggerClient.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DebuggerClient.mm; sourceTree = "<group>"; }; - 95B955240C975C7500AAB83B /* DebuggerDocumentPlatform.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DebuggerDocumentPlatform.mm; sourceTree = "<group>"; }; - 95C906AF0C8E439200F9BE0F /* Platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Platform.h; path = ../ForwardingHeaders/wtf/Platform.h; sourceTree = SOURCE_ROOT; }; - D23E47C50C4460C600B7CD07 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = /System/Library/Frameworks/JavaScriptCore.framework; sourceTree = "<absolute>"; }; - D2D794ED0C4BED83004784F7 /* DebuggerDocument.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 30; name = DebuggerDocument.cpp; path = ../DebuggerDocument.cpp; sourceTree = SOURCE_ROOT; }; - D2D794EE0C4BED83004784F7 /* DebuggerDocument.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 30; name = DebuggerDocument.h; path = ../DebuggerDocument.h; sourceTree = SOURCE_ROOT; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 1CD8D54B0A4902B000E5677B /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 1CD8D56C0A49043E00E5677B /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 8D15AC330486D014006FF6A4 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 63D54CBD0AE72C990064C440 /* Carbon.framework in Frameworks */, - 8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */, - D23E47C60C4460C600B7CD07 /* JavaScriptCore.framework in Frameworks */, - 1C27ABC60A413B720016ECF4 /* WebKit.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */ = { - isa = PBXGroup; - children = ( - 63D54CBC0AE72C990064C440 /* Carbon.framework */, - 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */, - 1C27ABC50A413B720016ECF4 /* WebKit.framework */, - ); - name = "Linked Frameworks"; - sourceTree = "<group>"; - }; - 1058C7A8FEA54F5311CA2CBB /* Other Frameworks */ = { - isa = PBXGroup; - children = ( - 2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */, - 13E42FBA07B3F13500E4EEF1 /* CoreData.framework */, - 2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */, - ); - name = "Other Frameworks"; - sourceTree = "<group>"; - }; - 19C28FB0FE9D524F11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 8D15AC370486D014006FF6A4 /* Drosera.app */, - 1CD8D54D0A4902B000E5677B /* DroseraLauncher.app */, - ); - name = Products; - sourceTree = "<group>"; - }; - 1CC058B70A44A210006FE533 /* Images */ = { - isa = PBXGroup; - children = ( - 63D54D7B0AE75CF10064C440 /* close_active.tif */, - 63D54D7C0AE75CF10064C440 /* close_hover.tif */, - 63D54D7D0AE75CF10064C440 /* close.tif */, - 63D54BD60AE600560064C440 /* breakpointeditor.png */, - 15CE854F0ADBEA610078A734 /* fileIcon.jpg */, - 15CE85500ADBEA610078A734 /* siteCollapsed.tif */, - 15CE85510ADBEA610078A734 /* siteExpanded.tif */, - 15CE85520ADBEA610078A734 /* siteIcon.tif */, - 15CE85530ADBEA610078A734 /* SourceArrowOpen.png */, - 1C6F84510A58EDFE004FCD89 /* console.png */, - 1C4FF7530A44F6320000D05D /* gutter.png */, - 1C4FF91F0A45F3520000D05D /* glossyHeader.png */, - 1CD434B10A4B86F800A007AB /* glossyHeaderPressed.png */, - 1C4FF94D0A45F5060000D05D /* popUpArrows.png */, - 1CC058B80A44A210006FE533 /* breakPoint.tif */, - 1CC058B90A44A210006FE533 /* breakPointDisabled.tif */, - 1CC058E00A44A210006FE533 /* programCounter.tif */, - 1C4FFE5C0A466F5D0000D05D /* programCounterBreakPoint.tif */, - 1C4FFE5D0A466F5D0000D05D /* programCounterBreakPointDisabled.tif */, - 1CC058CC0A44A210006FE533 /* glossyFooterFill.tif */, - 1CC058D80A44A210006FE533 /* navLeftDisabled.png */, - 1CC058D90A44A210006FE533 /* navLeftNormal.png */, - 1CC058DA0A44A210006FE533 /* navLeftPressed.png */, - 1CC058DB0A44A210006FE533 /* navRightDisabled.png */, - 1CC058DC0A44A210006FE533 /* navRightNormal.png */, - 1CC058DD0A44A210006FE533 /* navRightPressed.png */, - 1CC058E10A44A210006FE533 /* splitterBar.tif */, - 1CC058E20A44A210006FE533 /* splitterDimple.tif */, - 1CC058E60A44A210006FE533 /* finishFunction.tif */, - 1CC058E40A44A210006FE533 /* continue.tif */, - 1CC058E70A44A210006FE533 /* pause.tif */, - 1CC058E80A44A210006FE533 /* run.tif */, - 1CC058E90A44A210006FE533 /* step.tif */, - 1C6F83FE0A58E97D004FCD89 /* stepOut.tif */, - 1CC058EA0A44A210006FE533 /* stepOver.tif */, - 1CC058EB0A44A210006FE533 /* stop.tif */, - 1CC0596F0A44A485006FE533 /* toolbarBackground.png */, - 1C2632D10A4AF0A800EA7CD8 /* verticalSplitterBar.tiff */, - 1C2632D20A4AF0A800EA7CD8 /* verticalSplitterDimple.tiff */, - 1C2632D50A4AF0B800EA7CD8 /* SourceArrow.png */, - 1C2632D60A4AF0B800EA7CD8 /* SourceArrowBlank.png */, - 1C2632D90A4AF0D200EA7CD8 /* background_stripe.png */, - ); - name = Images; - path = ../Images; - sourceTree = "<group>"; - }; - 1CD8D53C0A49025D00E5677B /* Nightly Support */ = { - isa = PBXGroup; - children = ( - 1CD8D54F0A4902B000E5677B /* LauncherInfo.plist */, - 1CD8D5680A49041C00E5677B /* launcher.m */, - ); - name = "Nightly Support"; - sourceTree = "<group>"; - }; - 2A37F4AAFDCFA73011CA2CEA /* SafariBug */ = { - isa = PBXGroup; - children = ( - D23E47C50C4460C600B7CD07 /* JavaScriptCore.framework */, - 2A37F4ABFDCFA73011CA2CEA /* Classes */, - 2A37F4AFFDCFA73011CA2CEA /* Other Sources */, - 2A37F4B8FDCFA73011CA2CEA /* Resources */, - 1CD8D53C0A49025D00E5677B /* Nightly Support */, - 2A37F4C3FDCFA73011CA2CEA /* Frameworks */, - 19C28FB0FE9D524F11CA2CBB /* Products */, - ); - name = SafariBug; - sourceTree = "<group>"; - }; - 2A37F4ABFDCFA73011CA2CEA /* Classes */ = { - isa = PBXGroup; - children = ( - 63D54F770AE8280F0064C440 /* breakpointEditor.html */, - 1C6F84530A58EE06004FCD89 /* console.css */, - 1C6F84540A58EE06004FCD89 /* console.html */, - 1C6F861F0A599F65004FCD89 /* console.js */, - 1C74F1830A47DEE600FEC632 /* DebuggerApplication.h */, - 1C74F1840A47DEE600FEC632 /* DebuggerApplication.mm */, - 95B2A44E0C95EECD00850C41 /* DebuggerClient.h */, - 95B2A44F0C95EECD00850C41 /* DebuggerClient.mm */, - D2D794ED0C4BED83004784F7 /* DebuggerDocument.cpp */, - D2D794EE0C4BED83004784F7 /* DebuggerDocument.h */, - 95B955240C975C7500AAB83B /* DebuggerDocumentPlatform.mm */, - 1C27AC230A413D660016ECF4 /* debugger.js */, - 1C27AC1F0A413D2D0016ECF4 /* debugger.html */, - 1C4FF7430A44F5260000D05D /* debugger.css */, - 95C906AF0C8E439200F9BE0F /* Platform.h */, - 957876760C9A221B008B6383 /* ServerConnection.h */, - 957876840C9A226A008B6383 /* ServerConnection.mm */, - 1C74F0340A47BF8300FEC632 /* viewer.html */, - 1C74F03A0A47BFD600FEC632 /* viewer.css */, - ); - name = Classes; - sourceTree = "<group>"; - tabWidth = 8; - usesTabs = 0; - }; - 2A37F4AFFDCFA73011CA2CEA /* Other Sources */ = { - isa = PBXGroup; - children = ( - 957879610C9B37BC008B6383 /* config.h */, - 2A37F4B0FDCFA73011CA2CEA /* main.m */, - ); - name = "Other Sources"; - sourceTree = "<group>"; - tabWidth = 8; - usesTabs = 0; - }; - 2A37F4B8FDCFA73011CA2CEA /* Resources */ = { - isa = PBXGroup; - children = ( - 1C3487970A81208400101C5C /* Drosera.icns */, - 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */, - 2A37F4B4FDCFA73011CA2CEA /* Debugger.nib */, - 8D15AC360486D014006FF6A4 /* Info.plist */, - 1CC058B70A44A210006FE533 /* Images */, - ); - name = Resources; - sourceTree = "<group>"; - tabWidth = 8; - usesTabs = 0; - }; - 2A37F4C3FDCFA73011CA2CEA /* Frameworks */ = { - isa = PBXGroup; - children = ( - 1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */, - 1058C7A8FEA54F5311CA2CBB /* Other Frameworks */, - ); - name = Frameworks; - sourceTree = "<group>"; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 1CD8D54C0A4902B000E5677B /* Drosera (Nightly Launcher) */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1CD8D5500A4902B000E5677B /* Build configuration list for PBXNativeTarget "Drosera (Nightly Launcher)" */; - buildPhases = ( - 1CD8D5490A4902B000E5677B /* Resources */, - 1CD8D54A0A4902B000E5677B /* Sources */, - 1CD8D54B0A4902B000E5677B /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 1CD8D5AA0A49104E00E5677B /* PBXTargetDependency */, - ); - name = "Drosera (Nightly Launcher)"; - productName = "Drosera (Nightly Launcher)"; - productReference = 1CD8D54D0A4902B000E5677B /* DroseraLauncher.app */; - productType = "com.apple.product-type.application"; - }; - 8D15AC270486D014006FF6A4 /* Drosera */ = { - isa = PBXNativeTarget; - buildConfigurationList = C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "Drosera" */; - buildPhases = ( - 8D15AC2B0486D014006FF6A4 /* Resources */, - 8D15AC300486D014006FF6A4 /* Sources */, - 8D15AC330486D014006FF6A4 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Drosera; - productInstallPath = "$(HOME)/Applications"; - productName = SafariBug; - productReference = 8D15AC370486D014006FF6A4 /* Drosera.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 2A37F4A9FDCFA73011CA2CEA /* Project object */ = { - isa = PBXProject; - buildConfigurationList = C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "Drosera" */; - compatibilityVersion = "Xcode 2.4"; - hasScannedForEncodings = 1; - mainGroup = 2A37F4AAFDCFA73011CA2CEA /* SafariBug */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 8D15AC270486D014006FF6A4 /* Drosera */, - 1CD8D54C0A4902B000E5677B /* Drosera (Nightly Launcher) */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 1CD8D5490A4902B000E5677B /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1CD8D5A60A49102900E5677B /* Drosera.app in Resources */, - 5D2C827F0A816BA700C193FD /* Drosera.icns in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 8D15AC2B0486D014006FF6A4 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 8D15AC2E0486D014006FF6A4 /* Debugger.nib in Resources */, - 1C3487980A81208400101C5C /* Drosera.icns in Resources */, - 8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */, - 1C2632D70A4AF0B800EA7CD8 /* SourceArrow.png in Resources */, - 1C2632D80A4AF0B800EA7CD8 /* SourceArrowBlank.png in Resources */, - 15CE85580ADBEA620078A734 /* SourceArrowOpen.png in Resources */, - 1C2632DA0A4AF0D200EA7CD8 /* background_stripe.png in Resources */, - 1CC058EE0A44A210006FE533 /* breakPoint.tif in Resources */, - 1CC058EF0A44A210006FE533 /* breakPointDisabled.tif in Resources */, - 63D54F780AE8280F0064C440 /* breakpointEditor.html in Resources */, - 63D54BD70AE600560064C440 /* breakpointeditor.png in Resources */, - 63D54D800AE75CF10064C440 /* close.tif in Resources */, - 63D54D7E0AE75CF10064C440 /* close_active.tif in Resources */, - 63D54D7F0AE75CF10064C440 /* close_hover.tif in Resources */, - 1C6F84550A58EE06004FCD89 /* console.css in Resources */, - 1C6F84560A58EE06004FCD89 /* console.html in Resources */, - 1C6F86730A59A18B004FCD89 /* console.js in Resources */, - 1C6F84520A58EDFE004FCD89 /* console.png in Resources */, - 1CC0591A0A44A210006FE533 /* continue.tif in Resources */, - 1C4FF7440A44F52C0000D05D /* debugger.css in Resources */, - 1C27AC200A413D2D0016ECF4 /* debugger.html in Resources */, - 1C27B1260A421D870016ECF4 /* debugger.js in Resources */, - 15CE85540ADBEA620078A734 /* fileIcon.jpg in Resources */, - 1CC059020A44A210006FE533 /* glossyFooterFill.tif in Resources */, - 1C4FF9210A45F3520000D05D /* glossyHeader.png in Resources */, - 1CD434B20A4B86F800A007AB /* glossyHeaderPressed.png in Resources */, - 1C4FF7540A44F6320000D05D /* gutter.png in Resources */, - 1CC0590E0A44A210006FE533 /* navLeftDisabled.png in Resources */, - 1CC0590F0A44A210006FE533 /* navLeftNormal.png in Resources */, - 1CC059100A44A210006FE533 /* navLeftPressed.png in Resources */, - 1CC059110A44A210006FE533 /* navRightDisabled.png in Resources */, - 1CC059120A44A210006FE533 /* navRightNormal.png in Resources */, - 1CC059130A44A210006FE533 /* navRightPressed.png in Resources */, - 1CC0591D0A44A210006FE533 /* pause.tif in Resources */, - 1C4FF94E0A45F5060000D05D /* popUpArrows.png in Resources */, - 1CC059160A44A210006FE533 /* programCounter.tif in Resources */, - 1C4FFE5E0A466F5D0000D05D /* programCounterBreakPoint.tif in Resources */, - 1C4FFE5F0A466F5D0000D05D /* programCounterBreakPointDisabled.tif in Resources */, - 1CC0591E0A44A210006FE533 /* run.tif in Resources */, - 15CE85550ADBEA620078A734 /* siteCollapsed.tif in Resources */, - 15CE85560ADBEA620078A734 /* siteExpanded.tif in Resources */, - 15CE85570ADBEA620078A734 /* siteIcon.tif in Resources */, - 1CC059170A44A210006FE533 /* splitterBar.tif in Resources */, - 1CC059180A44A210006FE533 /* splitterDimple.tif in Resources */, - 1CC0591F0A44A210006FE533 /* step.tif in Resources */, - 1C6F83FF0A58E97D004FCD89 /* stepOut.tif in Resources */, - 1CC059200A44A210006FE533 /* stepOver.tif in Resources */, - 1CC059700A44A485006FE533 /* toolbarBackground.png in Resources */, - 1C2632D30A4AF0A800EA7CD8 /* verticalSplitterBar.tiff in Resources */, - 1C2632D40A4AF0A800EA7CD8 /* verticalSplitterDimple.tiff in Resources */, - 1C74F04B0A47BFE800FEC632 /* viewer.css in Resources */, - 1C74F0350A47BF8300FEC632 /* viewer.html in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 1CD8D54A0A4902B000E5677B /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1CD8D5690A49041C00E5677B /* launcher.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 8D15AC300486D014006FF6A4 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1C74F1850A47DEE600FEC632 /* DebuggerApplication.mm in Sources */, - 95B2A4500C95EECD00850C41 /* DebuggerClient.mm in Sources */, - D2D794FD0C4BED83004784F7 /* DebuggerDocument.cpp in Sources */, - 95B955250C975C7500AAB83B /* DebuggerDocumentPlatform.mm in Sources */, - 957876850C9A226A008B6383 /* ServerConnection.mm in Sources */, - 8D15AC320486D014006FF6A4 /* main.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 1CD8D5AA0A49104E00E5677B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8D15AC270486D014006FF6A4 /* Drosera */; - targetProxy = 1CD8D5A90A49104E00E5677B /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 2A37F4B4FDCFA73011CA2CEA /* Debugger.nib */ = { - isa = PBXVariantGroup; - children = ( - 2A37F4B5FDCFA73011CA2CEA /* Debugger.nib */, - ); - name = Debugger.nib; - sourceTree = "<group>"; - }; - 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */ = { - isa = PBXVariantGroup; - children = ( - 2A37F4B7FDCFA73011CA2CEA /* MainMenu.nib */, - ); - name = MainMenu.nib; - sourceTree = "<group>"; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 1CD8D5510A4902B000E5677B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COPY_PHASE_STRIP = NO; - GCC_DEBUGGING_SYMBOLS = full; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = LauncherInfo.plist; - INSTALL_PATH = "$(HOME)/Applications"; - PRODUCT_NAME = DroseraLauncher; - WRAPPER_EXTENSION = app; - }; - name = Debug; - }; - 1CD8D5520A4902B000E5677B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COPY_PHASE_STRIP = NO; - DEPLOYMENT_POSTPROCESSING = YES; - GCC_DEBUGGING_SYMBOLS = full; - GCC_GENERATE_DEBUGGING_SYMBOLS = NO; - INFOPLIST_FILE = LauncherInfo.plist; - INSTALL_PATH = "$(HOME)/Applications"; - PRODUCT_NAME = DroseraLauncher; - WRAPPER_EXTENSION = app; - }; - name = Release; - }; - C05733C808A9546B00998B17 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COPY_PHASE_STRIP = NO; - GCC_C_LANGUAGE_STANDARD = c99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = YES; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREFIX_HEADER = ""; - HEADER_SEARCH_PATHS = ../ForwardingHeaders; - INFOPLIST_FILE = Info.plist; - PRODUCT_NAME = Drosera; - USER_HEADER_SEARCH_PATHS = ../ForwardingHeaders/; - VALID_ARCHS = "ppc7400 ppc970 i386 ppc"; - WRAPPER_EXTENSION = app; - ZERO_LINK = NO; - }; - name = Debug; - }; - C05733C908A9546B00998B17 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - GCC_C_LANGUAGE_STANDARD = c99; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = NO; - GCC_MODEL_TUNING = G5; - GCC_PREFIX_HEADER = ""; - HEADER_SEARCH_PATHS = ../ForwardingHeaders; - INFOPLIST_FILE = Info.plist; - PRODUCT_NAME = Drosera; - USER_HEADER_SEARCH_PATHS = ../ForwardingHeaders/; - VALID_ARCHS = "ppc7400 ppc970 i386 ppc"; - WRAPPER_EXTENSION = app; - ZERO_LINK = NO; - }; - name = Release; - }; - C05733CC08A9546B00998B17 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEBUG_INFORMATION_FORMAT = dwarf; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - PREBINDING = NO; - USER_HEADER_SEARCH_PATHS = ../ForwardingHeaders/; - }; - name = Debug; - }; - C05733CD08A9546B00998B17 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEBUG_INFORMATION_FORMAT = dwarf; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - PREBINDING = NO; - USER_HEADER_SEARCH_PATHS = ../ForwardingHeaders/; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 1CD8D5500A4902B000E5677B /* Build configuration list for PBXNativeTarget "Drosera (Nightly Launcher)" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1CD8D5510A4902B000E5677B /* Debug */, - 1CD8D5520A4902B000E5677B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "Drosera" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C05733C808A9546B00998B17 /* Debug */, - C05733C908A9546B00998B17 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "Drosera" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C05733CC08A9546B00998B17 /* Debug */, - C05733CD08A9546B00998B17 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 2A37F4A9FDCFA73011CA2CEA /* Project object */; -} diff --git a/WebKitTools/Drosera/mac/Info.plist b/WebKitTools/Drosera/mac/Info.plist deleted file mode 100644 index 536f5a3..0000000 --- a/WebKitTools/Drosera/mac/Info.plist +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundleDevelopmentRegion</key> - <string>English</string> - <key>CFBundleName</key> - <string>${PRODUCT_NAME}</string> - <key>CFBundleExecutable</key> - <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>420+, Copyright 2006 Apple Computer, Inc.</string> - <key>CFBundleIdentifier</key> - <string>org.webkit.drosera</string> - <key>CFBundleVersion</key> - <string>1.0</string> - <key>CFBundleIconFile</key> - <string>Drosera</string> - <key>CFBundlePackageType</key> - <string>APPL</string> - <key>CFBundleSignature</key> - <string>????</string> - <key>NSMainNibFile</key> - <string>MainMenu</string> - <key>NSPrincipalClass</key> - <string>NSApplication</string> -</dict> -</plist> diff --git a/WebKitTools/Drosera/mac/LauncherInfo.plist b/WebKitTools/Drosera/mac/LauncherInfo.plist deleted file mode 100644 index 12c4472..0000000 --- a/WebKitTools/Drosera/mac/LauncherInfo.plist +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>CFBundleDevelopmentRegion</key> - <string>English</string> - <key>CFBundleExecutable</key> - <string>${EXECUTABLE_NAME}</string> - <key>CFBundleIconFile</key> - <string>Drosera</string> - <key>CFBundleIdentifier</key> - <string>org.webkit.drosera.launcher</string> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundlePackageType</key> - <string>APPL</string> - <key>CFBundleSignature</key> - <string>????</string> - <key>CFBundleVersion</key> - <string>VERSION</string> - <key>NSMainNibFile</key> - <string>MainMenu</string> - <key>NSPrincipalClass</key> - <string>NSApplication</string> -</dict> -</plist> diff --git a/WebKitTools/Drosera/mac/Makefile b/WebKitTools/Drosera/mac/Makefile deleted file mode 100644 index 058c21e..0000000 --- a/WebKitTools/Drosera/mac/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -SCRIPTS_PATH = ../../Scripts -include ../../../Makefile.shared diff --git a/WebKitTools/Drosera/mac/ServerConnection.h b/WebKitTools/Drosera/mac/ServerConnection.h deleted file mode 100644 index f2b1303..0000000 --- a/WebKitTools/Drosera/mac/ServerConnection.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -@class DebuggerClient; -@class NSString; -@class WebScriptCallFrame; -@class WebScriptDebugServer; - -@interface ServerConnection : NSObject <WebScriptDebugListener> -{ - NSString *currentServerName; - WebScriptCallFrame *currentFrame; - id<WebScriptDebugServer> server; - JSGlobalContextRef globalContext; -} - -- (id)initWithServerName:(NSString *)serverName; -- (void)setGlobalContext:(JSGlobalContextRef)globalContextRef; -- (void)pause; -- (void)resume; -- (void)stepInto; -- (void)switchToServerNamed:(NSString *)name; -- (void)applicationTerminating:(NSNotification *)notifiction; -- (WebScriptCallFrame *)currentFrame; -- (NSString *)currentServerName; - -@end diff --git a/WebKitTools/Drosera/mac/ServerConnection.mm b/WebKitTools/Drosera/mac/ServerConnection.mm deleted file mode 100644 index 8444ee9..0000000 --- a/WebKitTools/Drosera/mac/ServerConnection.mm +++ /dev/null @@ -1,265 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "config.h" -#import "ServerConnection.h" - -#import "DebuggerDocument.h" - -#import <JavaScriptCore/JSContextRef.h> -#import <JavaScriptCore/JSRetainPtr.h> -#import <JavaScriptCore/JSStringRefCF.h> -#import <JavaScriptCore/RetainPtr.h> - -@implementation ServerConnection - -#pragma mark - -- (id)initWithServerName:(NSString *)serverName; -{ - if (!(self = [super init])) - return nil; - - [self switchToServerNamed:serverName]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationTerminating:) name:NSApplicationWillTerminateNotification object:nil]; - - return self; -} - -- (void)dealloc -{ - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSApplicationWillTerminateNotification object:nil]; - - [currentServerName release]; - [currentFrame release]; - [server release]; - JSGlobalContextRelease(globalContext); - [super dealloc]; -} - -- (void)setGlobalContext:(JSGlobalContextRef)globalContextRef -{ - globalContext = JSGlobalContextRetain(globalContextRef); -} - -#pragma mark - -#pragma mark Pause & Step - -- (void)pause -{ - if ([[(NSDistantObject *)server connectionForProxy] isValid]) - [server pause]; - [[NSApplication sharedApplication] activateIgnoringOtherApps:YES]; -} - -- (void)resume -{ - if ([[(NSDistantObject *)server connectionForProxy] isValid]) - [server resume]; -} - -- (void)stepInto -{ - if ([[(NSDistantObject *)server connectionForProxy] isValid]) - [server step]; -} - -#pragma mark - -#pragma mark Connection Handling - -- (void)switchToServerNamed:(NSString *)name -{ - if (server) { - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSConnectionDidDieNotification object:[(NSDistantObject *)server connectionForProxy]]; - if ([[(NSDistantObject *)server connectionForProxy] isValid]) { - [server removeListener:self]; - [self resume]; - } - } - - id<WebScriptDebugServer> oldServer = server; - server = [name length] ? [[NSConnection rootProxyForConnectionWithRegisteredName:name host:nil] retain] : nil; - [oldServer release]; - - NSString *oldServerName = currentServerName; - currentServerName = [name retain]; - [oldServerName release]; - - if (server) { - @try { - [(NSDistantObject *)server setProtocolForProxy:@protocol(WebScriptDebugServer)]; - [server addListener:self]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(serverConnectionDidDie:) name:NSConnectionDidDieNotification object:[(NSDistantObject *)server connectionForProxy]]; - } @catch (NSException *exception) { - [currentServerName release]; - currentServerName = nil; - [server release]; - server = nil; - } - } -} - -- (void)applicationTerminating:(NSNotification *)notifiction -{ - if (server && [[(NSDistantObject *)server connectionForProxy] isValid]) { - [self switchToServerNamed:nil]; - // call the runloop for a while to make sure our removeListener: is sent to the server - [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.25]]; - } -} - -- (void)serverConnectionDidDie:(NSNotification *)notifiction -{ - [self switchToServerNamed:nil]; -} - -#pragma mark - -#pragma mark Debug Listener Callbacks - -- (void)webView:(WebView *)view didLoadMainResourceForDataSource:(WebDataSource *)dataSource -{ - // Get document source - NSString *documentSource = nil; - id <WebDocumentRepresentation> rep = [dataSource representation]; - if ([rep canProvideDocumentSource]) - documentSource = [rep documentSource]; - - if (!documentSource) - return; - - JSRetainPtr<JSStringRef> documentSourceJS(Adopt, JSStringCreateWithCFString((CFStringRef)documentSource)); - - // Get URL - NSString *url = [[[dataSource response] URL] absoluteString]; - JSRetainPtr<JSStringRef> urlJS(Adopt, JSStringCreateWithCFString(url ? (CFStringRef)url : CFSTR(""))); - - DebuggerDocument::updateFileSource(globalContext, documentSourceJS.get(), urlJS.get()); -} - -- (void)webView:(WebView *)view didParseSource:(NSString *)source baseLineNumber:(unsigned)baseLine fromURL:(NSURL *)url sourceId:(int)sid forWebFrame:(WebFrame *)webFrame -{ - if (!globalContext) - return; - - RetainPtr<NSString> sourceCopy = source; - if (!sourceCopy.get()) - return; - - RetainPtr<NSString> documentSourceCopy; - RetainPtr<NSString> urlCopy = [url absoluteString]; - - WebDataSource *dataSource = [webFrame dataSource]; - if (!url || [[[dataSource response] URL] isEqual:url]) { - id <WebDocumentRepresentation> rep = [dataSource representation]; - if ([rep canProvideDocumentSource]) - documentSourceCopy = [rep documentSource]; - if (!urlCopy.get()) - urlCopy = [[[dataSource response] URL] absoluteString]; - } - - JSRetainPtr<JSStringRef> sourceCopyJS(Adopt, JSStringCreateWithCFString((CFStringRef)sourceCopy.get())); // We checked for NULL earlier. - JSRetainPtr<JSStringRef> documentSourceCopyJS(Adopt, JSStringCreateWithCFString(documentSourceCopy.get() ? (CFStringRef)documentSourceCopy.get() : CFSTR(""))); - JSRetainPtr<JSStringRef> urlCopyJS(Adopt, JSStringCreateWithCFString(urlCopy.get() ? (CFStringRef)urlCopy.get() : CFSTR(""))); - JSValueRef sidJS = JSValueMakeNumber(globalContext, sid); - JSValueRef baseLineJS = JSValueMakeNumber(globalContext, baseLine); - - DebuggerDocument::didParseScript(globalContext, sourceCopyJS.get(), documentSourceCopyJS.get(), urlCopyJS.get(), sidJS, baseLineJS); -} - -- (void)webView:(WebView *)view failedToParseSource:(NSString *)source baseLineNumber:(unsigned)baseLine fromURL:(NSURL *)url withError:(NSError *)error forWebFrame:(WebFrame *)webFrame -{ -} - -- (void)webView:(WebView *)view didEnterCallFrame:(WebScriptCallFrame *)frame sourceId:(int)sid line:(int)lineno forWebFrame:(WebFrame *)webFrame -{ - if (!globalContext) - return; - - id old = currentFrame; - currentFrame = [frame retain]; - [old release]; - - JSValueRef sidJS = JSValueMakeNumber(globalContext, sid); - JSValueRef linenoJS = JSValueMakeNumber(globalContext, lineno); - - DebuggerDocument::didEnterCallFrame(globalContext, sidJS, linenoJS); -} - -- (void)webView:(WebView *)view willExecuteStatement:(WebScriptCallFrame *)frame sourceId:(int)sid line:(int)lineno forWebFrame:(WebFrame *)webFrame -{ - if (!globalContext) - return; - - JSValueRef sidJS = JSValueMakeNumber(globalContext, sid); - JSValueRef linenoJS = JSValueMakeNumber(globalContext, lineno); - - DebuggerDocument::willExecuteStatement(globalContext, sidJS, linenoJS); -} - -- (void)webView:(WebView *)view willLeaveCallFrame:(WebScriptCallFrame *)frame sourceId:(int)sid line:(int)lineno forWebFrame:(WebFrame *)webFrame -{ - if (!globalContext) - return; - - JSValueRef sidJS = JSValueMakeNumber(globalContext, sid); - JSValueRef linenoJS = JSValueMakeNumber(globalContext, lineno); - - DebuggerDocument::willLeaveCallFrame(globalContext, sidJS, linenoJS); - - id old = currentFrame; - currentFrame = [[frame caller] retain]; - [old release]; -} - -- (void)webView:(WebView *)view exceptionWasRaised:(WebScriptCallFrame *)frame sourceId:(int)sid line:(int)lineno forWebFrame:(WebFrame *)webFrame -{ - if (!globalContext) - return; - - JSValueRef sidJS = JSValueMakeNumber(globalContext, sid); - JSValueRef linenoJS = JSValueMakeNumber(globalContext, lineno); - - DebuggerDocument::exceptionWasRaised(globalContext, sidJS, linenoJS); -} - -#pragma mark - -#pragma mark Stack & Variables - -- (WebScriptCallFrame *)currentFrame -{ - return currentFrame; -} - -#pragma mark - -#pragma mark Server Detection Callbacks - --(NSString *)currentServerName -{ - return currentServerName; -} -@end diff --git a/WebKitTools/Drosera/mac/launcher.m b/WebKitTools/Drosera/mac/launcher.m deleted file mode 100644 index 04c5ccb..0000000 --- a/WebKitTools/Drosera/mac/launcher.m +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import <Cocoa/Cocoa.h> -#import <CoreFoundation/CoreFoundation.h> - -void displayErrorAndQuit(NSString *title, NSString *message) -{ - NSApplicationLoad(); - NSRunCriticalAlertPanel(title, message, @"Quit", nil, nil); - exit(0); -} - -void checkMacOSXVersion() -{ - long versionNumber = 0; - OSErr error = Gestalt(gestaltSystemVersion, &versionNumber); - if (error != noErr || versionNumber < 0x1040) - displayErrorAndQuit(@"Mac OS X 10.4 is Required", @"Nightly builds of Drosera require Mac OS X 10.4 or newer."); -} - -static void myExecve(NSString *executable, NSArray *args, NSDictionary *environment) -{ - char **argv = (char **)calloc(sizeof(char *), [args count] + 1); - char **env = (char **)calloc(sizeof(char *), [environment count] + 1); - - NSEnumerator *e = [args objectEnumerator]; - NSString *s; - int i = 0; - while (s = [e nextObject]) - argv[i++] = (char *) [s UTF8String]; - - e = [environment keyEnumerator]; - i = 0; - while (s = [e nextObject]) - env[i++] = (char *) [[NSString stringWithFormat:@"%@=%@", s, [environment objectForKey:s]] UTF8String]; - - execve([executable fileSystemRepresentation], argv, env); -} - -int main(int argc, char *argv[]) -{ - NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; - checkMacOSXVersion(); - - CFURLRef webkitURL = nil; - OSStatus err = LSFindApplicationForInfo(kLSUnknownCreator, CFSTR("org.webkit.nightly.WebKit"), nil, nil, &webkitURL); - if (err != noErr) - displayErrorAndQuit(@"Unable to locate WebKit.app", @"Drosera nightly builds require WebKit.app to run. Please check that it is available and then try again."); - - NSBundle *webKitAppBundle = [NSBundle bundleWithPath:[(NSURL *)webkitURL path]]; - NSString *frameworkPath = [webKitAppBundle resourcePath]; - NSBundle *droseraBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"Drosera" ofType:@"app"]]; - NSString *executablePath = [droseraBundle executablePath]; - NSString *pathToEnablerLib = [webKitAppBundle pathForResource:@"WebKitNightlyEnabler" ofType:@"dylib"]; - - NSMutableArray *arguments = [NSMutableArray arrayWithObjects:executablePath, @"-WebKitDeveloperExtras", @"YES", nil]; - - while (*++argv) - [arguments addObject:[NSString stringWithUTF8String:*argv]]; - - NSDictionary *environment = [NSDictionary dictionaryWithObjectsAndKeys:frameworkPath, @"DYLD_FRAMEWORK_PATH", - @"YES", @"WEBKIT_UNSET_DYLD_FRAMEWORK_PATH", pathToEnablerLib, @"DYLD_INSERT_LIBRARIES", - [[NSBundle mainBundle] executablePath], @"WebKitAppPath", nil]; - - myExecve(executablePath, arguments, environment); - - char *error = strerror(errno); - NSString *errorMessage = [NSString stringWithFormat:@"Launching Drosera at %@ failed with the error '%s' (%d)", [(NSURL *)webkitURL path], error, errno]; - displayErrorAndQuit(@"Unable to launch Drosera", errorMessage); - - [pool release]; - return 0; -} diff --git a/WebKitTools/Drosera/mac/main.m b/WebKitTools/Drosera/mac/main.m deleted file mode 100644 index 2c09761..0000000 --- a/WebKitTools/Drosera/mac/main.m +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include <Cocoa/Cocoa.h> - -int main(int argc, char *argv[]) -{ - return NSApplicationMain(argc, (const char **) argv); -} diff --git a/WebKitTools/Drosera/viewer.css b/WebKitTools/Drosera/viewer.css deleted file mode 100644 index aaac7a9..0000000 --- a/WebKitTools/Drosera/viewer.css +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -body { background-image: url(gutter.png); background-repeat: repeat-y; margin: 0; padding: 0; } -img { padding: 0; margin: 0; } - -table { border-spacing: 0; padding: 0; margin: 0; width: 100%; } -.gutter { -webkit-user-select: none; cursor: default; width: 32px; min-width: 32px; max-width: 32px; -webkit-box-sizing: border-box; font-size: 9px; font-family: Helvetica; color: #888; text-align: right; padding-right: 4px; } -.source { font-family: Monaco, monospace; white-space: pre; padding-left: 4px; padding-right: 4px; font-size: 11px; line-height: 14px; } - -.keyword { color: #8b0053 } -.string { color: #a00000 } -.number { color: #2900ff } -.comment { color: #007215 } - -td.gutter:after { content: attr(title); -webkit-user-select: none; } - -.breakpoint td.gutter, .current td.gutter { padding-right: 1px; vertical-align: top; } -.breakpoint td.gutter:after { content: url(breakPoint.tif); -webkit-user-select: none; vertical-align: middle; } -.breakpoint.disabled td.gutter:after { content: url(breakPointDisabled.tif); } - -.current td.gutter:after { content: url(programCounter.tif); -webkit-user-select: none; vertical-align: middle; } -.current.breakpoint td.gutter:after { content: url(programCounterBreakPoint.tif); } -.current.breakpoint.disabled td.gutter:after { content: url(programCounterBreakPointDisabled.tif); } -.current td.source { background-color: #abbffe; outline: 1px solid #406ffd; } - -#breakpointDrag { - position: absolute; - top: 0; - left: 0; - z-index: 100; - -webkit-user-select: none; - cursor: default; -} - -.editor { - top: -2px; - left: -2px; - margin-bottom: -2px; - position: relative; - min-width: 350px; - max-width: 500px; - border-width: 20px 12px 11px 36px; - border-color: transparent; - border-style: solid; - -webkit-border-image: url(breakpointeditor.png) 20 12 11 36; - font-size: 11px; - font-family: 'Lucida Grande', sans-serif; -} - -.editor .top { - position: absolute; - height: 20px; - -webkit-border-top-right-radius: 6px; - background-color: rgb(0, 134, 226); - border-bottom: 2px solid rgb(0, 110, 208); - top: -4px; - right: -5px; - left: -5px; - padding-left: 5px; - padding-right: 5px; -} - -.editor .bottom { - position: relative; - padding: 5px 0; - top: 20px; -} - -.editor .top label { - margin-left: 15px; -} - -.editor span.hitCounter { - margin-right: 4px; - margin-top: 1px; - padding-right: 2px; - padding-left: 2px; -} - -.editor select.editorDropdown { - margin-top: -1px; -} - -.editor div.condition { - position: relative; - background-color: white; - -webkit-user-modify: read-write-plaintext-only; - -webkit-nbsp-mode: space; - -webkit-line-break: after-white-space; - word-wrap: break-word; - outline: none; - font-family: monospace; - font-size: 10px; - line-height: 10px; - padding: 3px; - border: 1px solid darkgray; - top: -15px; - left: 65px; - margin-right: 65px; -} - -.editor input.close { - margin:0px; - margin-right: -4px; - float: right; - background-color: transparent; - background-image:url("close.tif"); - background-repeat: no-repeat; - height: 13px; - width: 12px; - border: none; -} - -.editor input.close:active { - background-image:url("close_active.tif"); -} - -.editor input.close:hover { - background-image:url("close_hover.tif"); -} diff --git a/WebKitTools/Drosera/viewer.html b/WebKitTools/Drosera/viewer.html deleted file mode 100644 index fb4a21c..0000000 --- a/WebKitTools/Drosera/viewer.html +++ /dev/null @@ -1,48 +0,0 @@ -<!-- -Copyright (C) 2006 Apple Computer, Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - its contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - <script type="text/javascript"> - Element.prototype.firstParentWithClass = function(className) { - var node = this.parentNode; - while(node.className.indexOf(className) == -1) { - if (node == document) - return null; - node = node.parentNode; - } - return node; - } - </script> - <style type="text/css"> - @import "viewer.css"; - </style> -</head> -<body></body> -</html> diff --git a/WebKitTools/Drosera/win/BaseDelegate.h b/WebKitTools/Drosera/win/BaseDelegate.h deleted file mode 100644 index eb43293..0000000 --- a/WebKitTools/Drosera/win/BaseDelegate.h +++ /dev/null @@ -1,314 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef BaseDelegate_H -#define BaseDelegate_H - -#include <WebKit/IWebFrameLoadDelegate.h> -#include <WebKit/IWebUIDelegate.h> - -struct IDataObject; -struct IPropertyBag; -struct IWebView; -struct IWebFrame; -struct IWebError; -struct IWebURLRequest; -struct IWebOpenPanelResultListener; - -class BaseDelegate : public IWebFrameLoadDelegate, public IWebUIDelegate { -public: - // IUnknown - virtual HRESULT STDMETHODCALLTYPE QueryInterface( - /* [in] */ REFIID, - /* [retval][out] */ void**) - { return E_NOTIMPL; }; - - // IWebFrameLoadDelegate - virtual HRESULT STDMETHODCALLTYPE didFinishLoadForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; }; - - virtual HRESULT STDMETHODCALLTYPE windowScriptObjectAvailable( - /* [in] */ IWebView*, - /* [in] */ JSContextRef, - /* [in] */ JSObjectRef) { return E_NOTIMPL; }; - - virtual HRESULT STDMETHODCALLTYPE didStartProvisionalLoadForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; }; - - virtual HRESULT STDMETHODCALLTYPE didReceiveServerRedirectForProvisionalLoadForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didFailProvisionalLoadWithError( - /* [in] */ IWebView*, - /* [in] */ IWebError*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didCommitLoadForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didReceiveTitle( - /* [in] */ IWebView*, - /* [in] */ BSTR, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didReceiveIcon( - /* [in] */ IWebView*, - /* [in] */ OLE_HANDLE, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didFailLoadWithError( - /* [in] */ IWebView*, - /* [in] */ IWebError*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didChangeLocationWithinPageForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE willPerformClientRedirectToURL( - /* [in] */ IWebView*, - /* [in] */ BSTR, - /* [in] */ double /*delaySeconds*/, - /* [in] */ DATE, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE didCancelClientRedirectForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE willCloseFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*) { return E_NOTIMPL; } - - // IWebUIDelegate - virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest( - /* [in] */ IWebView*, - /* [in] */ IWebURLRequest*, - /* [retval][out] */ IWebView**) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewShow( - /* [in] */ IWebView*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewClose( - /* [in] */ IWebView*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewFocus( - /* [in] */ IWebView*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewUnfocus( - /* [in] */ IWebView*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewFirstResponder( - /* [in] */ IWebView*, - /* [retval][out] */ OLE_HANDLE*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE makeFirstResponder( - /* [in] */ IWebView*, - /* [in] */ OLE_HANDLE) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setStatusText( - /* [in] */ IWebView*, - /* [in] */ BSTR) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewStatusText( - /* [in] */ IWebView*, - /* [retval][out] */ BSTR*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewAreToolbarsVisible( - /* [in] */ IWebView*, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setToolbarsVisible( - /* [in] */ IWebView*, - /* [in] */ BOOL) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewIsStatusBarVisible( - /* [in] */ IWebView*, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setStatusBarVisible( - /* [in] */ IWebView*, - /* [in] */ BOOL) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewIsResizable( - /* [in] */ IWebView*, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setResizable( - /* [in] */ IWebView*, - /* [in] */ BOOL) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setFrame( - /* [in] */ IWebView*, - /* [in] */ RECT*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewFrame( - /* [in] */ IWebView*, - /* [retval][out] */ RECT*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setContentRect( - /* [in] */ IWebView*, - /* [in] */ RECT*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE webViewContentRect( - /* [in] */ IWebView*, - /* [retval][out] */ RECT*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage( - /* [in] */ IWebView*, - /* [in] */ BSTR) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE runJavaScriptConfirmPanelWithMessage( - /* [in] */ IWebView*, - /* [in] */ BSTR, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE runJavaScriptTextInputPanelWithPrompt( - /* [in] */ IWebView*, - /* [in] */ BSTR /*message*/, - /* [in] */ BSTR /*defaultText*/, - /* [retval][out] */ BSTR*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE runBeforeUnloadConfirmPanelWithMessage( - /* [in] */ IWebView*, - /* [in] */ BSTR /*message*/, - /* [in] */ IWebFrame* /*initiatedByFrame*/, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE runOpenPanelForFileButtonWithResultListener( - /* [in] */ IWebView*, - /* [in] */ IWebOpenPanelResultListener*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE mouseDidMoveOverElement( - /* [in] */ IWebView*, - /* [in] */ IPropertyBag*, - /* [in] */ UINT /*modifierFlags*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE contextMenuItemsForElement( - /* [in] */ IWebView*, - /* [in] */ IPropertyBag*, - /* [in] */ OLE_HANDLE, - /* [retval][out] */ OLE_HANDLE*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE validateUserInterfaceItem( - /* [in] */ IWebView*, - /* [in] */ UINT, - /* [in] */ BOOL, - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE shouldPerformAction( - /* [in] */ IWebView*, - /* [in] */ UINT /*itemCommandID*/, - /* [in] */ UINT /*sender*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE dragDestinationActionMaskForDraggingInfo( - /* [in] */ IWebView*, - /* [in] */ IDataObject*, - /* [retval][out] */ WebDragDestinationAction*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE willPerformDragDestinationAction( - /* [in] */ IWebView*, - /* [in] */ WebDragDestinationAction, - /* [in] */ IDataObject*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE dragSourceActionMaskForPoint( - /* [in] */ IWebView*, - /* [in] */ LPPOINT, - /* [retval][out] */ WebDragSourceAction*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE willPerformDragSourceAction( - /* [in] */ IWebView*, - /* [in] */ WebDragSourceAction, - /* [in] */ LPPOINT, - /* [in] */ IDataObject*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE contextMenuItemSelected( - /* [in] */ IWebView*, - /* [in] */ void* /*item*/, - /* [in] */ IPropertyBag*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE hasCustomMenuImplementation( - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE trackCustomPopupMenu( - /* [in] */ IWebView*, - /* [in] */ OLE_HANDLE, - /* [in] */ LPPOINT) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE measureCustomMenuItem( - /* [in] */ IWebView*, - /* [in] */ void* /*measureItem*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE drawCustomMenuItem( - /* [in] */ IWebView*, - /* [in] */ void* /*drawItem*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE addCustomMenuDrawingData( - /* [in] */ IWebView*, - /* [in] */ OLE_HANDLE) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE cleanUpCustomMenuDrawingData( - /* [in] */ IWebView*, - /* [in] */ OLE_HANDLE) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE canTakeFocus( - /* [in] */ IWebView*, - /* [in] */ BOOL /*forward*/, - /* [out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE takeFocus( - /* [in] */ IWebView*, - /* [in] */ BOOL /*forward*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE registerUndoWithTarget( - /* [in] */ IWebUndoTarget*, - /* [in] */ BSTR /*actionName*/, - /* [in] */ IUnknown* /*actionArg*/) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE removeAllActionsWithTarget( - /* [in] */ IWebUndoTarget*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE setActionTitle( - /* [in] */ BSTR) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE undo( void) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE redo( void) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE canUndo( - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } - - virtual HRESULT STDMETHODCALLTYPE canRedo( - /* [retval][out] */ BOOL*) { return E_NOTIMPL; } -}; - -#endif //BaseDelegate_H diff --git a/WebKitTools/Drosera/win/DebuggerClient.cpp b/WebKitTools/Drosera/win/DebuggerClient.cpp deleted file mode 100644 index b15c61d..0000000 --- a/WebKitTools/Drosera/win/DebuggerClient.cpp +++ /dev/null @@ -1,343 +0,0 @@ -/* - * Copyright (C) 2007 Apple, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -#include "config.h" -#include "DebuggerClient.h" - -#include "DebuggerDocument.h" -#include "Drosera.h" -#include "ServerConnection.h" - -#include <WebKit/ForEachCoClass.h> -#include <WebKit/IWebView.h> -#include <WebKit/IWebViewPrivate.h> -#include <WebKit/WebKit.h> -#include <JavaScriptCore/JSContextRef.h> - -static LPCTSTR kConsoleTitle = _T("Console"); -static LPCTSTR kConsoleClassName = _T("DroseraConsoleWindowClass"); - -static LRESULT CALLBACK consoleWndProc(HWND, UINT, WPARAM, LPARAM); - -void registerConsoleClass(HINSTANCE hInstance) -{ - static bool haveRegisteredWindowClass = false; - - if (haveRegisteredWindowClass) { - haveRegisteredWindowClass = true; - return; - } - - WNDCLASSEX wcex; - - wcex.cbSize = sizeof(WNDCLASSEX); - - wcex.style = 0; - wcex.lpfnWndProc = consoleWndProc; - wcex.cbClsExtra = 0; - wcex.cbWndExtra = sizeof(DebuggerClient*); - wcex.hInstance = hInstance; - wcex.hIcon = 0; - wcex.hCursor = LoadCursor(0, IDC_ARROW); - wcex.hbrBackground = 0; - wcex.lpszMenuName = 0; - wcex.lpszClassName = kConsoleClassName; - wcex.hIconSm = 0; - - RegisterClassEx(&wcex); -} - -static LRESULT CALLBACK consoleWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ - LONG_PTR longPtr = GetWindowLongPtr(hWnd, 0); - DebuggerClient* client = reinterpret_cast<DebuggerClient*>(longPtr); - - switch (message) { - case WM_SIZE: - if (!client) - return 0; - return client->onSize(wParam, lParam); - case WM_PAINT: { - PAINTSTRUCT ps; - BeginPaint(hWnd, &ps); - EndPaint(hWnd, &ps); - break; - } - default: - return DefWindowProc(hWnd, message, wParam, lParam); - } - - return 0; -} - -LRESULT DebuggerClient::onSize(WPARAM, LPARAM) -{ - if (!m_webViewPrivate) - return 0; - - RECT clientRect = {0}; - if (!GetClientRect(m_consoleWindow, &clientRect)) - return 0; - - HWND viewWindow; - if (SUCCEEDED(m_webViewPrivate->viewWindow(reinterpret_cast<OLE_HANDLE*>(&viewWindow)))) - SetWindowPos(viewWindow, 0, clientRect.left, clientRect.top, clientRect.right - clientRect.left, clientRect.bottom - clientRect.top, SWP_NOZORDER); - - return 0; -} - -DebuggerClient::DebuggerClient() - : m_webViewLoaded(false) - , m_debuggerDocument(new DebuggerDocument(new ServerConnection())) - , m_globalContext(0) -{ -} - -DebuggerClient::~DebuggerClient() -{ - if (m_globalContext) - JSGlobalContextRelease(m_globalContext); -} - -// IUnknown ------------------------------ -HRESULT STDMETHODCALLTYPE DebuggerClient::QueryInterface(REFIID riid, void** ppvObject) -{ - *ppvObject = 0; - if (IsEqualGUID(riid, IID_IUnknown)) - *ppvObject = this; - else if (IsEqualGUID(riid, IID_IWebFrameLoadDelegate)) - *ppvObject = static_cast<IWebFrameLoadDelegate*>(this); - else if (IsEqualGUID(riid, IID_IWebUIDelegate)) - *ppvObject = static_cast<IWebUIDelegate*>(this); - else - return E_NOINTERFACE; - - AddRef(); - return S_OK; -} - -ULONG STDMETHODCALLTYPE DebuggerClient::AddRef() -{ - // COM ref-counting isn't useful to us because we're in charge of the lifetime of the WebView. - return 1; -} - -ULONG STDMETHODCALLTYPE DebuggerClient::Release() -{ - // COM ref-counting isn't useful to us because we're in charge of the lifetime of the WebView. - return 1; -} - -// IWebFrameLoadDelegate ------------------------------ -HRESULT STDMETHODCALLTYPE DebuggerClient::didFinishLoadForFrame( - /* [in] */ IWebView* webView, - /* [in] */ IWebFrame*) -{ - HRESULT ret = S_OK; - - m_webViewLoaded = true; - - COMPtr<IWebFrame> mainFrame; - ret = webView->mainFrame(&mainFrame); - if (FAILED(ret)) - return ret; - - if (!m_globalContext) { - JSGlobalContextRef context = mainFrame->globalContext(); - if (!context) - return E_FAIL; - - m_globalContext = JSGlobalContextRetain(context); - } - - if (serverConnected()) - m_debuggerDocument->server()->setGlobalContext(m_globalContext); - - return ret; -} - -HRESULT STDMETHODCALLTYPE DebuggerClient::windowScriptObjectAvailable( - /* [in] */ IWebView*, - /* [in] */ JSContextRef context, - /* [in] */ JSObjectRef windowObject) -{ - JSValueRef exception = 0; - if (m_debuggerDocument) - m_debuggerDocument->windowScriptObjectAvailable(context, windowObject, &exception); - - if (exception) - return E_FAIL; - - return S_OK; -} - -HRESULT STDMETHODCALLTYPE DebuggerClient::createWebViewWithRequest( - /* [in] */ IWebView*, - /* [in] */ IWebURLRequest* request, - /* [retval][out] */ IWebView** newWebView) -{ - HRESULT ret = S_OK; - - if (!newWebView) - return E_POINTER; - - *newWebView = 0; - - HINSTANCE instance = Drosera::getInst(); - - registerConsoleClass(instance); - - m_consoleWindow = CreateWindow(kConsoleClassName, kConsoleTitle, WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT, 0, 500, 350, 0, 0, instance, 0); - - if (!m_consoleWindow) - return HRESULT_FROM_WIN32(GetLastError()); - - SetLastError(0); - SetWindowLongPtr(m_consoleWindow, 0, reinterpret_cast<LONG_PTR>(this)); - ret = HRESULT_FROM_WIN32(GetLastError()); - if (FAILED(ret)) - return ret; - - CLSID clsid = CLSID_NULL; - ret = CLSIDFromProgID(PROGID(WebView), &clsid); - if (FAILED(ret)) - return ret; - - COMPtr<IWebView> view; - ret = CoCreateInstance(clsid, 0, CLSCTX_ALL, IID_IWebView, (void**)&view); - if (FAILED(ret)) - return ret; - - m_webViewPrivate.query(view); - if (!m_webViewPrivate) - return E_FAIL; - - ret = view->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_consoleWindow)); - if (FAILED(ret)) - return ret; - - RECT clientRect = {0}; - GetClientRect(m_consoleWindow, &clientRect); - ret = view->initWithFrame(clientRect, 0, 0); - if (FAILED(ret)) - return ret; - - ret = view->setUIDelegate(this); - if (FAILED(ret)) - return ret; - - ret = view->setFrameLoadDelegate(this); - if (FAILED(ret)) - return ret; - - if (request) { - BOOL requestIsEmpty = FALSE; - ret = request->isEmpty(&requestIsEmpty); - if (FAILED(ret)) - return ret; - - if (!requestIsEmpty) { - COMPtr<IWebFrame> mainFrame; - ret = view->mainFrame(&mainFrame); - if (FAILED(ret)) - return ret; - - ret = mainFrame->loadRequest(request); - if (FAILED(ret)) - return ret; - } - } - - ShowWindow(m_consoleWindow, SW_SHOW); - UpdateWindow(m_consoleWindow); - - *newWebView = view.releaseRef(); - - return S_OK; -} - -// IWebUIDelegate ------------------------------ -HRESULT STDMETHODCALLTYPE DebuggerClient::runJavaScriptAlertPanelWithMessage( // For debugging purposes - /* [in] */ IWebView*, - /* [in] */ BSTR message) -{ -#ifndef NDEBUG - fwprintf(stderr, L"%s\n", message ? message : L""); -#else - (void)message; -#endif - return S_OK; -} - -// Pause & Step ------------------------------- -void DebuggerClient::resume() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "resume", 0, 0); -} - -void DebuggerClient::pause() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "pause", 0, 0); -} - -void DebuggerClient::stepInto() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "stepInto", 0, 0); -} - -void DebuggerClient::stepOver() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "stepOver", 0, 0); -} - -void DebuggerClient::stepOut() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "stepOut", 0, 0); -} - -void DebuggerClient::showConsole() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "showConsoleWindow", 0, 0); -} - -void DebuggerClient::closeCurrentFile() -{ - DebuggerDocument::callGlobalFunction(m_globalContext, "closeCurrentFile", 0, 0); -} - - -// Server Connection Functions ---------------- -bool DebuggerClient::serverConnected() const -{ - return m_debuggerDocument->server()->serverConnected(); -} - -void DebuggerClient::attemptToCreateServerConnection() -{ - m_debuggerDocument->server()->attemptToCreateServerConnection(m_globalContext); -} diff --git a/WebKitTools/Drosera/win/DebuggerClient.h b/WebKitTools/Drosera/win/DebuggerClient.h deleted file mode 100644 index 7297615..0000000 --- a/WebKitTools/Drosera/win/DebuggerClient.h +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef DebuggerClient_H -#define DebuggerClient_H - -#include "BaseDelegate.h" - -#include <string> -#include <WebCore/COMPtr.h> -#include <wtf/OwnPtr.h> - -class DebuggerDocument; -interface IWebView; -interface IWebFrame; -interface IWebViewPrivate; - -typedef const struct OpaqueJSContext* JSContextRef; -typedef struct OpaqueJSValue* JSObjectRef; - -class DebuggerClient : public BaseDelegate { -public: - DebuggerClient(); - ~DebuggerClient(); - explicit DebuggerClient(const std::wstring& serverName); - - LRESULT DebuggerClient::onSize(WPARAM, LPARAM); - - // IUnknown - HRESULT STDMETHODCALLTYPE QueryInterface( - /* [in] */ REFIID riid, - /* [retval][out] */ void** ppvObject); - - ULONG STDMETHODCALLTYPE AddRef(); - ULONG STDMETHODCALLTYPE Release(); - - // IWebFrameLoadDelegate - HRESULT STDMETHODCALLTYPE didFinishLoadForFrame( - /* [in] */ IWebView*, - /* [in] */ IWebFrame*); - - HRESULT STDMETHODCALLTYPE windowScriptObjectAvailable( - /* [in] */ IWebView*, - /* [in] */ JSContextRef, - /* [in] */ JSObjectRef); - - // IWebUIDelegate - HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage( - /* [in] */ IWebView*, - /* [in] */ BSTR); - - HRESULT STDMETHODCALLTYPE createWebViewWithRequest( - /* [in] */ IWebView*, - /* [in] */ IWebURLRequest*, - /* [retval][out] */ IWebView**); - - bool webViewLoaded() const { return m_webViewLoaded; } - - // Pause & Step - void resume(); - void pause(); - void stepInto(); - void stepOver(); - void stepOut(); - void showConsole(); - void closeCurrentFile(); - - // Server Connection Functions - bool serverConnected() const; - void attemptToCreateServerConnection(); - -private: - bool m_webViewLoaded; - JSGlobalContextRef m_globalContext; - - HWND m_consoleWindow; - COMPtr<IWebViewPrivate> m_webViewPrivate; - - OwnPtr<DebuggerDocument> m_debuggerDocument; -}; - -#endif //DebuggerClient_H diff --git a/WebKitTools/Drosera/win/DebuggerDocumentPlatform.cpp b/WebKitTools/Drosera/win/DebuggerDocumentPlatform.cpp deleted file mode 100644 index 36e51e2..0000000 --- a/WebKitTools/Drosera/win/DebuggerDocumentPlatform.cpp +++ /dev/null @@ -1,160 +0,0 @@ -/* - * Copyright (C) 2007 Apple, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -#include "config.h" -#include "DebuggerDocument.h" - -#include "ServerConnection.h" - -#include <JavaScriptCore/JSRetainPtr.h> -#include <JavaScriptCore/JSStringRef.h> -#include <JavaScriptCore/JSStringRefBSTR.h> -#include <WebKit/IWebScriptCallFrame.h> - -JSValueRef JSValueRefCreateWithBSTR(JSContextRef context, BSTR string) -{ - JSRetainPtr<JSStringRef> jsString(Adopt, JSStringCreateWithBSTR(string)); - return JSValueMakeString(context, jsString.get()); -} - -// DebuggerDocument platform specific implementations - -void DebuggerDocument::platformPause() -{ - m_server->pause(); -} - -void DebuggerDocument::platformResume() -{ - m_server->resume(); -} - -void DebuggerDocument::platformStepInto() -{ - m_server->stepInto(); -} - -JSValueRef DebuggerDocument::platformEvaluateScript(JSContextRef context, JSStringRef script, int callFrame) -{ - HRESULT ret = S_OK; - - COMPtr<IWebScriptCallFrame> cframe = m_server->getCallerFrame(callFrame); - if (!cframe) - return JSValueMakeUndefined(context); - - // Convert script to BSTR - BSTR scriptBSTR = JSStringCopyBSTR(script); - BSTR value = 0; - ret = cframe->stringByEvaluatingJavaScriptFromString(scriptBSTR, &value); - SysFreeString(scriptBSTR); - if (FAILED(ret)) { - SysFreeString(value); - return JSValueMakeUndefined(context); - } - - JSValueRef returnValue = JSValueRefCreateWithBSTR(context, value); - SysFreeString(value); - return returnValue; - -} - -void DebuggerDocument::getPlatformCurrentFunctionStack(JSContextRef context, Vector<JSValueRef>& currentStack) -{ - COMPtr<IWebScriptCallFrame> frame = m_server->currentFrame(); - while (frame) { - COMPtr<IWebScriptCallFrame> caller; - BSTR function = 0; - if (FAILED(frame->functionName(&function))) - return; - - if (FAILED(frame->caller(&caller))) - return; - - if (!function) { - if (caller) - function = SysAllocString(L"(anonymous function)"); - else - function = SysAllocString(L"(global scope)"); - } - - currentStack.append(JSValueRefCreateWithBSTR(context, function)); - SysFreeString(function); - - frame = caller; - } -} - -void DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame(JSContextRef context, int callFrame, Vector<JSValueRef>& variableNames) -{ - COMPtr<IWebScriptCallFrame> cframe = m_server->getCallerFrame(callFrame); - if (!cframe) - return; - - VARIANT var; - VariantInit(&var); - - COMPtr<IEnumVARIANT> localScopeVariableNames; - if (FAILED(cframe->variableNames(&localScopeVariableNames))) - return; - - while (localScopeVariableNames->Next(1, &var, 0) == S_OK) { - ASSERT(V_VT(&var) == VT_BSTR); - BSTR variableName; - - variableName = V_BSTR(&var); - variableNames.append(JSValueRefCreateWithBSTR(context, variableName)); - - SysFreeString(variableName); - VariantClear(&var); - } -} - -JSValueRef DebuggerDocument::platformValueForScopeVariableNamed(JSContextRef context, JSStringRef key, int callFrame) -{ - COMPtr<IWebScriptCallFrame> cframe = m_server->getCallerFrame(callFrame); - if (!cframe) - return JSValueMakeUndefined(context); - - BSTR bstrKey = JSStringCopyBSTR(key); - - BSTR variableValue; - HRESULT hr = cframe->valueForVariable(bstrKey, &variableValue); - SysFreeString(bstrKey); - if (FAILED(hr)) - return JSValueMakeUndefined(context); - - JSValueRef returnValue = JSValueRefCreateWithBSTR(context, variableValue); - SysFreeString(variableValue); - - return returnValue; -} - - -void DebuggerDocument::platformLog(JSStringRef msg) -{ - printf("%S\n", JSStringGetCharactersPtr(msg)); -} diff --git a/WebKitTools/Drosera/win/Drosera.cpp b/WebKitTools/Drosera/win/Drosera.cpp deleted file mode 100644 index 5e35c8c..0000000 --- a/WebKitTools/Drosera/win/Drosera.cpp +++ /dev/null @@ -1,394 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "config.h" -#include "Drosera.h" - -#include "DebuggerClient.h" -#include "DebuggerDocument.h" -#include "resource.h" -#include "ServerConnection.h" - -#include <JavaScriptCore/JSStringRef.h> -#include <WebKit/ForEachCoClass.h> -#include <WebKit/IWebMutableURLRequest.h> -#include <WebKit/IWebView.h> -#include <WebKit/WebKit.h> -#include <wtf/RetainPtr.h> - -const unsigned MAX_LOADSTRING = 100; - -TCHAR szTitle[MAX_LOADSTRING]; // The title bar text -TCHAR szWindowClass[MAX_LOADSTRING]; // the main window class name - -static LPCTSTR s_DroseraPointerProp = TEXT("DroseraPointer"); -static HINSTANCE hInst; - -BSTR cfStringToBSTR(CFStringRef cfstr); - -void registerDroseraClass(HINSTANCE hInstance); -LRESULT CALLBACK droseraWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); -INT_PTR CALLBACK aboutWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); - -HINSTANCE Drosera::getInst() { return hInst; } -void Drosera::setInst(HINSTANCE in) { hInst = in; } -void launchConsoleWindow(); - -extern "C" __declspec(dllimport) HANDLE* __pioinfo; - -int APIENTRY _tWinMain(HINSTANCE hInstance, - HINSTANCE hPrevInstance, - LPTSTR lpCmdLine, - int nCmdShow) -{ - UNREFERENCED_PARAMETER(hPrevInstance); - UNREFERENCED_PARAMETER(lpCmdLine); - - MSG msg; - -#ifndef NDEBUG - launchConsoleWindow(); -#endif - - Drosera drosera; - - HRESULT ret = drosera.init(hInstance, nCmdShow); - if (FAILED(ret)) - return ret; - - HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_DROSERA)); - - // Main message loop: - while (GetMessage(&msg, 0, 0, 0)) { - if (!drosera.serverConnected()) - drosera.attemptToCreateServerConnection(); - - if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) { - TranslateMessage(&msg); - DispatchMessage(&msg); - } - } - - return static_cast<int>(msg.wParam); -} - -void launchConsoleWindow() -{ - if (AllocConsole()) { - // MSVCRT exports __pioinfo which is an array of ioinfo handles. the first three are stdout, stdin, and stderr - // the first pointer in the ioinfo object is the kernel handle for the console, so we can simplify the expression - // to just deref the exported symbol, setting it to the newly allocated console handle. - *__pioinfo = GetStdHandle(STD_OUTPUT_HANDLE); - // When an app is created without a console, stdout, stderr and stdin are all invalid handles (i.e. negative) - // Since we've introduced new handles, we can reset their file index - which is the index into the ioinfo array. - // This hooks up the standard cruntime APIS to the new console, allowing a functional output. As for input YMMV. - stdout->_file = 0; - stderr->_file = 0; - } -} - -////////////////// Setup Windows Specific Interface ////////////////// - -void registerDroseraClass(HINSTANCE hInstance) -{ - WNDCLASSEX wcex; - - wcex.cbSize = sizeof(WNDCLASSEX); - - wcex.style = CS_HREDRAW | CS_VREDRAW; - wcex.lpfnWndProc = ::droseraWndProc; - wcex.cbClsExtra = 0; - wcex.cbWndExtra = sizeof(Drosera*); - wcex.hInstance = hInstance; - wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_DROSERA)); - wcex.hCursor = LoadCursor(0, IDC_ARROW); - wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); - wcex.lpszMenuName = MAKEINTRESOURCE(IDC_DROSERA); - wcex.lpszClassName = szWindowClass; - wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); - - RegisterClassEx(&wcex); -} - -//Processes messages for the main window. -LRESULT CALLBACK droseraWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ - PAINTSTRUCT ps; - HDC hdc; - - LONG_PTR longPtr = GetWindowLongPtr(hWnd, 0); - Drosera* drosera = reinterpret_cast<Drosera*>(longPtr); - - switch (message) { - case WM_COMMAND: - return drosera->handleCommand(hWnd, message, wParam, lParam); - break; - case WM_SIZE: - if (!drosera) - return 0; - return drosera->webViewLoaded() ? drosera->onSize(wParam, lParam) : 0; - case WM_PAINT: - hdc = BeginPaint(hWnd, &ps); - EndPaint(hWnd, &ps); - break; - case WM_DESTROY: - PostQuitMessage(0); - break; - default: - return DefWindowProc(hWnd, message, wParam, lParam); - } - - return 0; -} - -LRESULT CALLBACK Drosera::handleCommand(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ - int wmId = LOWORD(wParam); - switch (wmId) { - case ID_DEBUG_CONTINUE: - m_debuggerClient->resume(); - break; - case ID_DEBUG_PAUSE: - m_debuggerClient->pause(); - break; - case ID_DEBUG_STEPINTO: - m_debuggerClient->stepInto(); - break; - case ID_DEBUG_STEPOVER: - m_debuggerClient->stepOver(); - break; - case ID_DEBUG_STEPOUT: - m_debuggerClient->stepOut(); - break; - case ID_DEBUG_SHOWCONSOLE: - m_debuggerClient->showConsole(); - break; - case ID_HELP_ABOUT: - DialogBox(Drosera::getInst(), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, ::aboutWndProc); - break; - case ID_FILE_EXIT: - DestroyWindow(hWnd); - break; - default: - return DefWindowProc(hWnd, message, wParam, lParam); - } - - return 0; -} - -// Message handler for about box. -INT_PTR CALLBACK aboutWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) -{ - UNREFERENCED_PARAMETER(lParam); - switch (message) { - case WM_INITDIALOG: - return (INT_PTR)TRUE; - - case WM_COMMAND: - if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) { - EndDialog(hDlg, LOWORD(wParam)); - return (INT_PTR)TRUE; - } - break; - } - return (INT_PTR)FALSE; -} - -////////////////// End Setup Windows Specific Interface ////////////////// - -Drosera::Drosera() - : m_hWnd(0) - , m_debuggerClient(new DebuggerClient()) -{ -} - -HRESULT Drosera::init(HINSTANCE hInstance, int nCmdShow) -{ - HRESULT ret = initUI(hInstance, nCmdShow); - if (FAILED(ret)) - return ret; - - ret = attach(); - return ret; -} - - -HRESULT Drosera::initUI(HINSTANCE hInstance, int nCmdShow) -{ - // Initialize global strings - LoadString(hInstance, IDS_APP_TITLE, szTitle, ARRAYSIZE(szTitle)); - LoadString(hInstance, IDC_DROSERA, szWindowClass, ARRAYSIZE(szWindowClass)); - registerDroseraClass(hInstance); - - Drosera::setInst(hInstance); // Store instance handle in our local variable - - m_hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, 0, 0, hInstance, 0); - - if (!m_hWnd) - return HRESULT_FROM_WIN32(GetLastError()); - - SetLastError(0); - SetWindowLongPtr(m_hWnd, 0, reinterpret_cast<LONG_PTR>(this)); - HRESULT ret = HRESULT_FROM_WIN32(GetLastError()); - if (FAILED(ret)) - return ret; - - CLSID clsid = CLSID_NULL; - ret = CLSIDFromProgID(PROGID(WebView), &clsid); - if (FAILED(ret)) - return ret; - - ret = CoCreateInstance(clsid, 0, CLSCTX_ALL, IID_IWebView, (void**)&m_webView); - if (FAILED(ret)) - return ret; - - m_webViewPrivate.query(m_webView.get()); - if (!m_webViewPrivate) - return E_FAIL; - - ret = m_webView->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_hWnd)); - if (FAILED(ret)) - return ret; - - RECT clientRect = {0}; - ::GetClientRect(m_hWnd, &clientRect); - ret = m_webView->initWithFrame(clientRect, 0, 0); - if (FAILED(ret)) - return ret; - - HWND viewWindow; - ret = m_webViewPrivate->viewWindow(reinterpret_cast<OLE_HANDLE*>(&viewWindow)); - if (FAILED(ret)) - return ret; - - SetProp(viewWindow, s_DroseraPointerProp, (HANDLE)this); - - // FIXME: Implement window size/position save/restore - ShowWindow(m_hWnd, nCmdShow); - UpdateWindow(m_hWnd); - - return ret; -} - -LRESULT Drosera::onSize(WPARAM, LPARAM) -{ - if (!m_webViewPrivate) - return 0; - - RECT clientRect = {0}; - ::GetClientRect(m_hWnd, &clientRect); - - HWND viewWindow; - if (SUCCEEDED(m_webViewPrivate->viewWindow(reinterpret_cast<OLE_HANDLE*>(&viewWindow)))) - // FIXME should this be the height-command bars height? - ::SetWindowPos(viewWindow, 0, clientRect.left, clientRect.top, clientRect.right - clientRect.left, clientRect.bottom - clientRect.top, SWP_NOZORDER); - - return 0; -} - -bool Drosera::webViewLoaded() const -{ - return m_debuggerClient->webViewLoaded(); -} - -// Server Detection Callbacks - -HRESULT Drosera::attach() -{ - // Get selected server - HRESULT ret = m_webView->setFrameLoadDelegate(m_debuggerClient.get()); - if (FAILED(ret)) - return ret; - - ret = m_webView->setUIDelegate(m_debuggerClient.get()); - if (FAILED(ret)) - return ret; - - CLSID clsid = CLSID_NULL; - ret = CLSIDFromProgID(PROGID(WebMutableURLRequest), &clsid); - if (FAILED(ret)) - return ret; - - COMPtr<IWebMutableURLRequest> request; - ret = CoCreateInstance(clsid, 0, CLSCTX_ALL, IID_IWebMutableURLRequest, (void**)&request); - if (FAILED(ret)) - return ret; - - RetainPtr<CFURLRef> htmlURLRef(AdoptCF, ::CFBundleCopyResourceURL(::CFBundleGetBundleWithIdentifier(CFSTR("org.webkit.drosera")), CFSTR("debugger"), CFSTR("html"), CFSTR("Drosera"))); - if (!htmlURLRef) - return E_FAIL; - - CFStringRef urlStringRef = ::CFURLGetString(htmlURLRef.get()); - BSTR tempStr = cfStringToBSTR(urlStringRef); // Both initWithRUL and SysFreeString can handle 0. - ret = request->initWithURL(tempStr, WebURLRequestUseProtocolCachePolicy, 60); - SysFreeString(tempStr); - if (FAILED(ret)) - return ret; - - COMPtr<IWebFrame> mainFrame; - ret = m_webView->mainFrame(&mainFrame); - if (FAILED(ret)) - return ret; - - ret = mainFrame->loadRequest(request.get()); - if (FAILED(ret)) - return ret; - - return ret; -} - -BSTR cfStringToBSTR(CFStringRef cfstr) -{ - if (!cfstr) - return 0; - - const UniChar* uniChars = CFStringGetCharactersPtr(cfstr); - if (uniChars) - return SysAllocStringLen((LPCTSTR)uniChars, CFStringGetLength(cfstr)); - - CFIndex length = CFStringGetLength(cfstr); - BSTR bstr = SysAllocStringLen(0, length); - CFStringGetCharacters(cfstr, CFRangeMake(0, length), (UniChar*)bstr); - bstr[length] = 0; - - return bstr; -} - -// Server Connection Functions - -bool Drosera::serverConnected() const -{ - return m_debuggerClient->serverConnected(); -} - -void Drosera::attemptToCreateServerConnection() -{ - m_debuggerClient->attemptToCreateServerConnection(); -} - diff --git a/WebKitTools/Drosera/win/Drosera.h b/WebKitTools/Drosera/win/Drosera.h deleted file mode 100644 index a73c7f7..0000000 --- a/WebKitTools/Drosera/win/Drosera.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef Drosera_H -#define Drosera_H - -#include "DebuggerDocument.h" - -#include <WebCore/COMPtr.h> -#include <wtf/OwnPtr.h> - -class DebuggerClient; -interface IWebView; -interface IWebViewPrivate; - -class Drosera { -public: - Drosera(); - - static HINSTANCE getInst(); - static void setInst(HINSTANCE); - - HRESULT init(HINSTANCE hInstance, int nCmdShow); - LRESULT onSize(WPARAM, LPARAM); - LRESULT CALLBACK handleCommand(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); - - bool webViewLoaded() const; - - // Server connection functions - bool serverConnected() const; - void attemptToCreateServerConnection(); - -private: - HRESULT initUI(HINSTANCE hInstance, int nCmdShow); - HRESULT attach(); - - HWND m_hWnd; - - COMPtr<IWebView> m_webView; - COMPtr<IWebViewPrivate> m_webViewPrivate; - - OwnPtr<DebuggerClient> m_debuggerClient; -}; - -#endif //Drosera_H diff --git a/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.rc b/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.rc deleted file mode 100755 index 6f8a8c8..0000000 --- a/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.rc +++ /dev/null @@ -1,196 +0,0 @@ -// Microsoft Visual C++ generated resource script.
-//
-#include "resource.h"
-#ifndef APSTUDIO_INVOKED
-#include "autoversion.h"
-#endif
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#define APSTUDIO_HIDDEN_SYMBOLS
-#include "windows.h"
-#undef APSTUDIO_HIDDEN_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDI_DROSERA ICON "Drosera.ico"
-IDI_SMALL ICON "small.ico"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Menu
-//
-
-IDC_DROSERA MENU
-BEGIN
- POPUP "&File"
- BEGIN
- MENUITEM "Close Current File", ID_FILE_CLOSECURRENTFILE
- MENUITEM "Exit", ID_FILE_EXIT
- END
- POPUP "Edit"
- BEGIN
- MENUITEM "Undo", ID_EDIT_UNDO
- MENUITEM "Redo", ID_EDIT_REDO
- MENUITEM SEPARATOR
- MENUITEM "Cut", ID_EDIT_CUT
- MENUITEM "Copy", ID_EDIT_COPY
- MENUITEM "Paste", ID_EDIT_PASTE
- MENUITEM "Select All", ID_EDIT_SELECTALL
- MENUITEM SEPARATOR
- POPUP "Find"
- BEGIN
- MENUITEM "Find", ID_FIND_FIND
- MENUITEM "Find Next", ID_FIND_FINDNEXT
- MENUITEM "Find Previous", ID_FIND_FINDPREVIOUS
- MENUITEM "Use Selection for Find", ID_FIND_USESELECTIONFORFIND
- MENUITEM "Jump to Selection", ID_FIND_JUMPTOSELECTION
- END
- MENUITEM SEPARATOR
- MENUITEM "Special Characters", ID_EDIT_SPECIALCHARACTERS
- END
- POPUP "Debug"
- BEGIN
- MENUITEM "Show Console", ID_DEBUG_SHOWCONSOLE
- MENUITEM SEPARATOR
- MENUITEM "Continue", ID_DEBUG_CONTINUE
- MENUITEM "Pause", ID_DEBUG_PAUSE
- MENUITEM "Step Into", ID_DEBUG_STEPINTO
- MENUITEM "Step Over", ID_DEBUG_STEPOVER
- MENUITEM "Step Out", ID_DEBUG_STEPOUT
- END
- MENUITEM "Window", ID_WINDOW
- POPUP "Help"
- BEGIN
- MENUITEM "About", ID_HELP_ABOUT
- END
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_ABOUTBOX DIALOGEX 0, 0, 146, 62
-STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_CAPTION | WS_SYSMENU
-CAPTION "About"
-FONT 8, "System", 0, 0, 0x0
-BEGIN
- ICON IDI_DROSERA,IDC_MYICON,64,10,20,20
- CTEXT "Drosera Version 1.0",IDC_STATIC,0,37,146,8,SS_NOPREFIX
-END
-
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#define APSTUDIO_HIDDEN_SYMBOLS\r\n"
- "#include ""windows.h""\r\n"
- "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION __VERSION_MAJOR__,__BUILD_NUMBER_MAJOR__,__BUILD_NUMBER_MINOR__,__BUILD_NUMBER_VARIANT__
- PRODUCTVERSION __VERSION_MAJOR__,__VERSION_MINOR__,__VERSION_TINY__,0
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x4L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "040904b0"
- BEGIN
- VALUE "FileDescription", "Drosera JavaScript Debugger"
- VALUE "FileVersion", __VERSION_TEXT__
- VALUE "CompanyName", "Apple Inc."
- VALUE "InternalName", "Drosera"
- VALUE "LegalCopyright", "Copyright Apple Inc. 2006-2008"
- VALUE "OriginalFilename", "Drosera.exe"
- VALUE "ProductName", "Drosera"
- VALUE "ProductVersion", __VERSION_TEXT__
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x409, 1200
- END
-END
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// String Table
-//
-
-STRINGTABLE
-BEGIN
- IDS_APP_TITLE "Drosera"
- IDC_DROSERA "DROSERA"
-END
-
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.vcproj b/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.vcproj deleted file mode 100755 index 3f72dda..0000000 --- a/WebKitTools/Drosera/win/Drosera.vcproj/Drosera.vcproj +++ /dev/null @@ -1,449 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="Drosera"
- ProjectGUID="{91671475-2114-4D8F-A051-9A1B270F6467}"
- RootNamespace="Drosera"
- Keyword="Win32Proj"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- ConfigurationType="1"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops"
- CharacterSet="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="set PATH=%SystemDrive%\cygwin\bin;%PATH%
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(ProjectDir)";"$(ProjectDir)\..";"$(ProjectDir)\..\..";"$(ProjectDir)\..\..\ForwardingHeaders";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(IntDir)\include""
- PreprocessorDefinitions="STRICT;__APPLICATION_NAME__=\"$(ProjectName)\""
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="DroseraPrefix.h"
- ForcedIncludeFiles="DroseraPrefix.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;__APPLICATION_NAME__=\"$(ProjectName)\""
- Culture="1033"
- AdditionalIncludeDirectories=""$(IntDir)\include""
- />
- <Tool
- Name="VCPreLinkEventTool"
- CommandLine=""
- />
- <Tool
- Name="VCLinkerTool"
- LinkLibraryDependencies="false"
- AdditionalDependencies="CoreFoundation$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKit$(WebKitDLLConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WTF$(WebKitConfigSuffix).lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
- LinkIncremental="2"
- AdditionalLibraryDirectories=""$(WebKitOutputDir)\lib";"$(WebKitLibrariesDir)\lib""
- IgnoreAllDefaultLibraries="false"
- EmbedManagedResourceFile=""
- DelayLoadDLLs=""
- GenerateDebugInformation="true"
- SubSystem="2"
- LinkTimeCodeGeneration="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxml2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxslt$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources"
xcopy /y /d "$(ProjectDir)..\Info.plist" "$(OutDir)\$(ProjectName).resources"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.css" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.html" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.js" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\Images\*" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- ConfigurationType="1"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\release.vsprops"
- CharacterSet="1"
- WholeProgramOptimization="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="set PATH=%SystemDrive%\cygwin\bin;%PATH%
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/EHsc"
- AdditionalIncludeDirectories=""$(ProjectDir)";"$(ProjectDir)\..";"$(ProjectDir)\..\..";"$(ProjectDir)\..\..\ForwardingHeaders";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(IntDir)\include""
- PreprocessorDefinitions="STRICT;__APPLICATION_NAME__=\"$(ProjectName)\""
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="DroseraPrefix.h"
- ForcedIncludeFiles="DroseraPrefix.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;__APPLICATION_NAME__=\"$(ProjectName)\""
- Culture="1033"
- AdditionalIncludeDirectories=""$(IntDir)\include""
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- LinkLibraryDependencies="false"
- AdditionalDependencies="CoreFoundation$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKit$(WebKitDLLConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WTF$(WebKitConfigSuffix).lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
- LinkIncremental="1"
- AdditionalLibraryDirectories=""$(WebKitOutputDir)\lib";"$(WebKitLibrariesDir)\lib""
- DelayLoadDLLs=""
- GenerateDebugInformation="true"
- SubSystem="2"
- OptimizeReferences="0"
- EnableCOMDATFolding="2"
- OptimizeForWindows98="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxml2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxslt$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources"
xcopy /y /d "$(ProjectDir)..\Info.plist" "$(OutDir)\$(ProjectName).resources"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.css" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.html" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.js" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\Images\*" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
"
- />
- </Configuration>
- <Configuration
- Name="Debug_Internal|Win32"
- ConfigurationType="1"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_internal.vsprops"
- CharacterSet="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="set PATH=%SystemDrive%\cygwin\bin;%PATH%
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(ProjectDir)";"$(ProjectDir)\..";"$(ProjectDir)\..\..";"$(ProjectDir)\..\..\ForwardingHeaders";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(IntDir)\include""
- PreprocessorDefinitions="STRICT;__APPLICATION_NAME__=\"$(ProjectName)\""
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="DroseraPrefix.h"
- ForcedIncludeFiles="DroseraPrefix.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;__APPLICATION_NAME__=\"$(ProjectName)\""
- Culture="1033"
- AdditionalIncludeDirectories=""$(IntDir)\include""
- />
- <Tool
- Name="VCPreLinkEventTool"
- CommandLine=""
- />
- <Tool
- Name="VCLinkerTool"
- LinkLibraryDependencies="false"
- AdditionalDependencies="CoreFoundation$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKit$(WebKitDLLConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WTF$(WebKitConfigSuffix).lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
- LinkIncremental="2"
- AdditionalLibraryDirectories=""$(WebKitOutputDir)\lib";"$(WebKitLibrariesDir)\lib""
- IgnoreAllDefaultLibraries="false"
- EmbedManagedResourceFile=""
- DelayLoadDLLs=""
- GenerateDebugInformation="true"
- SubSystem="2"
- LinkTimeCodeGeneration="0"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CFNetwork$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreFoundation$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\CoreGraphics$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuin36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\icuuc36$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxml2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\libxslt$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\pthreadVC2$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\SQLite3$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).dll" "$(WebKitOutputDir)\bin"
xcopy /y /d "$(WebKitLibrariesDir)\bin\zlib1$(LibraryConfigSuffix).pdb" "$(WebKitOutputDir)\bin"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources"
xcopy /y /d "$(ProjectDir)..\Info.plist" "$(OutDir)\$(ProjectName).resources"

mkdir 2>NUL "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.css" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.html" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\*.js" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
xcopy /y /d "$(ProjectDir)..\..\Images\*" "$(OutDir)\$(ProjectName).resources\$(ProjectName)"
"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath="..\DebuggerClient.cpp"
- >
- </File>
- <File
- RelativePath="..\..\DebuggerDocument.cpp"
- >
- </File>
- <File
- RelativePath="..\DebuggerDocumentPlatform.cpp"
- >
- </File>
- <File
- RelativePath="..\Drosera.cpp"
- >
- </File>
- <File
- RelativePath="..\DroseraPrefix.cpp"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug_Internal|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\ServerConnection.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath="..\BaseDelegate.h"
- >
- </File>
- <File
- RelativePath="..\..\config.h"
- >
- </File>
- <File
- RelativePath="..\DebuggerClient.h"
- >
- </File>
- <File
- RelativePath="..\..\DebuggerDocument.h"
- >
- </File>
- <File
- RelativePath="..\Drosera.h"
- >
- </File>
- <File
- RelativePath="..\DroseraPrefix.h"
- >
- </File>
- <File
- RelativePath="..\ServerConnection.h"
- >
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
- UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
- >
- <File
- RelativePath="..\..\Images\Drosera.ico"
- >
- </File>
- <File
- RelativePath=".\Drosera.rc"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(InputDir)\WTL75\include";"$(IntDir)\include";"$(ProjectDir)..";"$(ProjectDir)..\..\Images""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(ProjectDir)..";"$(ProjectDir)..\..\Images""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug_Internal|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(InputDir)\WTL75\include";"$(IntDir)\include";"$(ProjectDir)..";"$(ProjectDir)..\..\Images""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\resource.h"
- >
- </File>
- <File
- RelativePath="..\..\Images\small.ico"
- >
- </File>
- </Filter>
- <Filter
- Name="WebSource"
- >
- <File
- RelativePath="..\..\breakpointEditor.html"
- >
- </File>
- <File
- RelativePath="..\..\console.css"
- >
- </File>
- <File
- RelativePath="..\..\console.html"
- >
- </File>
- <File
- RelativePath="..\..\console.js"
- >
- </File>
- <File
- RelativePath="..\..\debugger.css"
- >
- </File>
- <File
- RelativePath="..\..\debugger.html"
- >
- </File>
- <File
- RelativePath="..\..\debugger.js"
- >
- </File>
- <File
- RelativePath="..\..\viewer.css"
- >
- </File>
- <File
- RelativePath="..\..\viewer.html"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/WebKitTools/Drosera/win/DroseraPrefix.cpp b/WebKitTools/Drosera/win/DroseraPrefix.cpp deleted file mode 100644 index 39d3f80..0000000 --- a/WebKitTools/Drosera/win/DroseraPrefix.cpp +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "DroseraPrefix.h" diff --git a/WebKitTools/Drosera/win/DroseraPrefix.h b/WebKitTools/Drosera/win/DroseraPrefix.h deleted file mode 100644 index fe608c7..0000000 --- a/WebKitTools/Drosera/win/DroseraPrefix.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef droseraPrefix_H -#define droseraPrefix_H - -// Modify the following defines if you have to target a platform prior to the ones specified below. -// Refer to MSDN for the latest info on corresponding values for different platforms. -#ifndef WINVER // Allow use of features specific to Windows XP or later. -#define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows. -#endif - -#ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later. -#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows. -#endif - -#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later. -#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later. -#endif - -#ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later. -#define _WIN32_IE 0x0600 // Change this to the appropriate value to target other versions of IE. -#endif - -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#endif - -#ifndef WIN32 -#define WIN32 1 -#endif - -#endif //droseraPrefix_H diff --git a/WebKitTools/Drosera/win/Info.plist b/WebKitTools/Drosera/win/Info.plist deleted file mode 100644 index ce4a0f7..0000000 --- a/WebKitTools/Drosera/win/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>CFBundleDevelopmentRegion</key> - <string>English</string> - <key>CFBundleExecutable</key> - <string>Drosera</string> - <key>CFBundleIconFile</key> - <string>Drosera</string> - <key>CFBundleIdentifier</key> - <string>org.webkit.drosera</string> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundlePackageType</key> - <string>APPL</string> - <key>CFBundleSignature</key> - <string>????</string> - <key>CFBundleVersion</key> - <string>21081</string> - <key>NSMainNibFile</key> - <string>MainMenu</string> - <key>NSPrincipalClass</key> - <string>NSApplication</string> -</dict> -</plist> diff --git a/WebKitTools/Drosera/win/ServerConnection.cpp b/WebKitTools/Drosera/win/ServerConnection.cpp deleted file mode 100644 index e59c4fc..0000000 --- a/WebKitTools/Drosera/win/ServerConnection.cpp +++ /dev/null @@ -1,370 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "config.h" -#include "ServerConnection.h" - -#include "DebuggerDocument.h" - -#include <JavaScriptCore/JSContextRef.h> -#include <JavaScriptCore/JSRetainPtr.h> -#include <JavaScriptCore/JSStringRefBSTR.h> -#include <JavaScriptCore/RetainPtr.h> -#include <WebKit/ForEachCoClass.h> -#include <WebKit/IWebScriptCallFrame.h> -#include <WebKit/IWebScriptDebugServer.h> -#include <WebKit/WebKit.h> - -#include <iostream> - -ServerConnection::ServerConnection() - : m_globalContext(0) - , m_serverConnected(false) -{ - OleInitialize(0); - attemptToCreateServerConnection(); -} - -ServerConnection::~ServerConnection() -{ - if (m_server) - m_server->removeListener(this); - - if (m_globalContext) - JSGlobalContextRelease(m_globalContext); -} - -void ServerConnection::attemptToCreateServerConnection(JSGlobalContextRef globalContextRef) -{ - COMPtr<IWebScriptDebugServer> tempServer; - - CLSID clsid = CLSID_NULL; - if (FAILED(CLSIDFromProgID(PROGID(WebScriptDebugServer), &clsid))) - return; - - if (FAILED(CoCreateInstance(clsid, 0, CLSCTX_LOCAL_SERVER, IID_IWebScriptDebugServer, (void**)&tempServer))) - return; - - if (FAILED(tempServer->sharedWebScriptDebugServer(&m_server))) - return; - - if (FAILED(m_server->addListener(this))) { - m_server = 0; - return; - } - - m_serverConnected = true; - - if (globalContextRef) - m_globalContext = JSGlobalContextRetain(globalContextRef); -} - -void ServerConnection::setGlobalContext(JSGlobalContextRef globalContextRef) -{ - m_globalContext = JSGlobalContextRetain(globalContextRef); -} - -// Pause & Step - -void ServerConnection::pause() -{ - if (m_server) - m_server->pause(); -} - -void ServerConnection::resume() -{ - if (m_server) - m_server->resume(); -} - -void ServerConnection::stepInto() -{ - if (m_server) - m_server->step(); -} - -// IUnknown -------------------------------------------------- -HRESULT STDMETHODCALLTYPE ServerConnection::QueryInterface(REFIID riid, void** ppvObject) -{ - *ppvObject = 0; - if (IsEqualGUID(riid, IID_IUnknown)) - *ppvObject = this; - else if (IsEqualGUID(riid, IID_IWebScriptDebugListener)) - *ppvObject = static_cast<IWebScriptDebugListener*>(this); - else - return E_NOINTERFACE; - - AddRef(); - return S_OK; -} - -ULONG STDMETHODCALLTYPE ServerConnection::AddRef(void) -{ - // COM ref-counting isn't useful to us because we're in charge of the lifetime of the WebView. - return 1; -} - -ULONG STDMETHODCALLTYPE ServerConnection::Release(void) -{ - // COM ref-counting isn't useful to us because we're in charge of the lifetime of the WebView. - return 1; -} -// IWebScriptDebugListener ----------------------------------- -HRESULT STDMETHODCALLTYPE ServerConnection::didLoadMainResourceForDataSource( - /* [in] */ IWebView*, - /* [in] */ IWebDataSource* dataSource) -{ - HRESULT ret = S_OK; - if (!m_globalContext || !dataSource) - return ret; - - // Get document source - COMPtr<IWebDocumentRepresentation> rep; - ret = dataSource->representation(&rep); - if (FAILED(ret)) - return ret; - - BOOL canProvideDocumentSource = FALSE; - ret = rep->canProvideDocumentSource(&canProvideDocumentSource); - if (FAILED(ret)) - return ret; - - BSTR documentSource = 0; - if (canProvideDocumentSource) - ret = rep->documentSource(&documentSource); - - if (FAILED(ret) || !documentSource) - return ret; - - JSRetainPtr<JSStringRef> documentSourceJS(Adopt, JSStringCreateWithBSTR(documentSource)); - SysFreeString(documentSource); - - // Get URL - COMPtr<IWebURLResponse> response; - ret = dataSource->response(&response); - if (FAILED(ret)) - return ret; - - BSTR url = 0; - ret = response->URL(&url); - if (FAILED(ret)) - return ret; - - JSRetainPtr<JSStringRef> urlJS(Adopt, JSStringCreateWithBSTR(url)); - SysFreeString(url); - - DebuggerDocument::updateFileSource(m_globalContext, documentSourceJS.get(), urlJS.get()); - - return S_OK; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::didParseSource( - /* [in] */ IWebView*, - /* [in] */ BSTR sourceCode, - /* [in] */ UINT baseLineNumber, - /* [in] */ BSTR url, - /* [in] */ int sourceID, - /* [in] */ IWebFrame* webFrame) -{ - HRESULT ret = S_OK; - if (!m_globalContext || !sourceCode) - return ret; - - COMPtr<IWebDataSource> dataSource; - ret = webFrame->dataSource(&dataSource); - if (FAILED(ret)) - return ret; - - COMPtr<IWebURLResponse> response; - ret = dataSource->response(&response); - if (FAILED(ret)) - return ret; - - BSTR responseURL; - ret = response->URL(&responseURL); - if (FAILED(ret)) - return ret; - - BSTR documentSource = 0; - if (!url || !wcscmp(responseURL, url)) { - COMPtr<IWebDocumentRepresentation> rep; - ret = dataSource->representation(&rep); - if (FAILED(ret)) - return ret; - - BOOL canProvideDocumentSource; - rep->canProvideDocumentSource(&canProvideDocumentSource); - if (FAILED(ret)) - return ret; - - if (canProvideDocumentSource) { - ret = rep->documentSource(&documentSource); - if (FAILED(ret)) - return ret; - } - - if (!url) { - ret = response->URL(&url); - if (FAILED(ret)) - return ret; - } - } - SysFreeString(responseURL); - - JSRetainPtr<JSStringRef> sourceJS(Adopt, JSStringCreateWithBSTR(sourceCode)); - JSRetainPtr<JSStringRef> documentSourceJS(Adopt, JSStringCreateWithBSTR(documentSource)); - SysFreeString(documentSource); - JSRetainPtr<JSStringRef> urlJS(Adopt, JSStringCreateWithBSTR(url)); - JSValueRef sidJS = JSValueMakeNumber(m_globalContext, sourceID); - JSValueRef baseLineJS = JSValueMakeNumber(m_globalContext, baseLineNumber); - - DebuggerDocument::didParseScript(m_globalContext, sourceJS.get(), documentSourceJS.get(), urlJS.get(), sidJS, baseLineJS); - - return S_OK; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::failedToParseSource( - /* [in] */ IWebView*, - /* [in] */ BSTR, - /* [in] */ UINT, - /* [in] */ BSTR, - /* [in] */ BSTR, - /* [in] */ IWebFrame*) -{ - return S_OK; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::didEnterCallFrame( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame* frame, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*) -{ - HRESULT ret = S_OK; - if (!m_globalContext) - return ret; - - m_currentFrame = frame; - - JSValueRef sidJS = JSValueMakeNumber(m_globalContext, sourceID); - JSValueRef linenoJS = JSValueMakeNumber(m_globalContext, lineNumber); - - DebuggerDocument::didEnterCallFrame(m_globalContext, sidJS, linenoJS); - - return ret; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::willExecuteStatement( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame*, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*) -{ - HRESULT ret = S_OK; - if (!m_globalContext) - return ret; - - JSValueRef sidJS = JSValueMakeNumber(m_globalContext, sourceID); - JSValueRef linenoJS = JSValueMakeNumber(m_globalContext, lineNumber); - - DebuggerDocument::willExecuteStatement(m_globalContext, sidJS, linenoJS); - return ret; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::willLeaveCallFrame( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame* frame, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*) -{ - HRESULT ret = S_OK; - if (!m_globalContext) - return ret; - - JSValueRef sidJS = JSValueMakeNumber(m_globalContext, sourceID); - JSValueRef linenoJS = JSValueMakeNumber(m_globalContext, lineNumber); - - DebuggerDocument::willLeaveCallFrame(m_globalContext, sidJS, linenoJS); - - m_currentFrame = frame; - - return S_OK; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::exceptionWasRaised( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame*, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*) -{ - HRESULT ret = S_OK; - if (!m_globalContext) - return ret; - - JSValueRef sidJS = JSValueMakeNumber(m_globalContext, sourceID); - JSValueRef linenoJS = JSValueMakeNumber(m_globalContext, lineNumber); - - DebuggerDocument::exceptionWasRaised(m_globalContext, sidJS, linenoJS); - - return ret; -} - -HRESULT STDMETHODCALLTYPE ServerConnection::serverDidDie() -{ - m_server = 0; - m_currentFrame = 0; - m_serverConnected = false; - return S_OK; -} - -// Stack & Variables - -IWebScriptCallFrame* ServerConnection::currentFrame() const -{ - return m_currentFrame.get(); -} - -COMPtr<IWebScriptCallFrame> ServerConnection::getCallerFrame(int callFrame) const -{ - COMPtr<IWebScriptCallFrame> cframe = currentFrame(); - for (int count = 0; count < callFrame; count++) { - COMPtr<IWebScriptCallFrame> callerFrame; - if (FAILED(cframe->caller(&callerFrame))) - return 0; - - cframe = callerFrame; - } - - return cframe; -} diff --git a/WebKitTools/Drosera/win/ServerConnection.h b/WebKitTools/Drosera/win/ServerConnection.h deleted file mode 100644 index 765d487..0000000 --- a/WebKitTools/Drosera/win/ServerConnection.h +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * Copyright (C) 2006, 2007 Vladimir Olexa (vladimir.olexa@gmail.com) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef ServerConnection_H -#define ServerConnection_H - -#include <string> -#include <WebCore/COMPtr.h> -#include <WebKit/IWebScriptDebugListener.h> - -class DebuggerClient; -interface IWebScriptCallFrame; -interface IWebScriptDebugServer; - -typedef struct OpaqueJSContext* JSGlobalContextRef; - -class ServerConnection : public IWebScriptDebugListener { -public: - ServerConnection(); - ~ServerConnection(); - - bool serverConnected() const { return m_serverConnected; } - void attemptToCreateServerConnection(JSGlobalContextRef = 0); - void setGlobalContext(JSGlobalContextRef); - - // Pause & Step - void pause(); - void resume(); - void stepInto(); - - // IUnknown - virtual HRESULT STDMETHODCALLTYPE QueryInterface( - /* [in] */ REFIID riid, - /* [retval][out] */ void** ppvObject); - - virtual ULONG STDMETHODCALLTYPE AddRef(); - virtual ULONG STDMETHODCALLTYPE Release(); - - // IWebScriptDebugListener - virtual HRESULT STDMETHODCALLTYPE didLoadMainResourceForDataSource( - /* [in] */ IWebView*, - /* [in] */ IWebDataSource* dataSource); - - virtual HRESULT STDMETHODCALLTYPE didParseSource( - /* [in] */ IWebView*, - /* [in] */ BSTR sourceCode, - /* [in] */ UINT baseLineNumber, - /* [in] */ BSTR url, - /* [in] */ int sourceID, - /* [in] */ IWebFrame* webFrame); - - virtual HRESULT STDMETHODCALLTYPE failedToParseSource( - /* [in] */ IWebView*, - /* [in] */ BSTR sourceCode, - /* [in] */ UINT baseLineNumber, - /* [in] */ BSTR url, - /* [in] */ BSTR error, - /* [in] */ IWebFrame*); - - virtual HRESULT STDMETHODCALLTYPE didEnterCallFrame( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame* frame, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*); - - virtual HRESULT STDMETHODCALLTYPE willExecuteStatement( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame*, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*); - - virtual HRESULT STDMETHODCALLTYPE willLeaveCallFrame( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame* frame, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*); - - virtual HRESULT STDMETHODCALLTYPE exceptionWasRaised( - /* [in] */ IWebView*, - /* [in] */ IWebScriptCallFrame*, - /* [in] */ int sourceID, - /* [in] */ int lineNumber, - /* [in] */ IWebFrame*); - - virtual HRESULT STDMETHODCALLTYPE serverDidDie(); - - // Stack & Variables - IWebScriptCallFrame* currentFrame() const; - COMPtr<IWebScriptCallFrame> getCallerFrame(int callFrame) const; - -private: - bool m_serverConnected; - - COMPtr<IWebScriptCallFrame> m_currentFrame; - COMPtr<IWebScriptDebugServer> m_server; - JSGlobalContextRef m_globalContext; -}; - -#endif //ServerConnection_H diff --git a/WebKitTools/Drosera/win/resource.h b/WebKitTools/Drosera/win/resource.h deleted file mode 100644 index 4ba014e..0000000 --- a/WebKitTools/Drosera/win/resource.h +++ /dev/null @@ -1,47 +0,0 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by Drosera.rc -// -#define IDC_MYICON 2 -#define IDS_APP_TITLE 103 -#define IDD_ABOUTBOX 103 -#define IDI_DROSERA 107 -#define IDI_SMALL 108 -#define IDC_DROSERA 109 -#define IDC_LIST1 1001 -#define ID_DEBUG_SHOWCONSOLE 32771 -#define ID_DEBUG_CONTINUE 32772 -#define ID_DEBUG_PAUSE 32773 -#define ID_DEBUG_STEPINTO 32774 -#define ID_DEBUG_STEPOVER 32775 -#define ID_DEBUG_STEPOUT 32776 -#define ID_EDIT_UNDO 32777 -#define ID_EDIT_REDO 32778 -#define ID_EDIT_CUT 32779 -#define ID_EDIT_COPY 32780 -#define ID_EDIT_PASTE 32781 -#define ID_EDIT_SELECTALL 32782 -#define ID_FIND_FIND 32784 -#define ID_FIND_FINDNEXT 32785 -#define ID_FIND_FINDPREVIOUS 32786 -#define ID_FIND_USESELECTIONFORFIND 32787 -#define ID_FIND_JUMPTOSELECTION 32788 -#define ID_EDIT_SPECIALCHARACTERS 32789 -#define ID_FILE_EXIT 32791 -#define ID_WINDOW 32793 -#define ID_HELP_ABOUT 32794 -#define ID_FILE_CLOSE_CURRENT_FILE 32795 -#define ID_FILE_CLOSECURRENTFILE 32798 -#define IDC_STATIC -1 - -// Next default values for new objects -// -#ifdef APSTUDIO_INVOKED -#ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NO_MFC 1 -#define _APS_NEXT_RESOURCE_VALUE 131 -#define _APS_NEXT_COMMAND_VALUE 32799 -#define _APS_NEXT_CONTROL_VALUE 1002 -#define _APS_NEXT_SYMED_VALUE 110 -#endif -#endif |