WebKit/win:
authorkmccullough@apple.com <kmccullough@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Nov 2007 01:05:58 +0000 (01:05 +0000)
committerkmccullough@apple.com <kmccullough@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Nov 2007 01:05:58 +0000 (01:05 +0000)
commita85753eb61d9717718a812cbccbce1deefffc12e
treeffd1eb5a40d4b577ca68bb31fb686773eb32fcfc
parent3820cfeb228d079f236f34965c017ecb626740e6
WebKit/win:

        Reviewed by Adam.

        - Make Drosera show source, source URLs, and function stack on Windows
        and some minor fixes.

        * WebScriptCallFrame.cpp: Fixed a bug where the callFrame was not reffed
        properly before being returned, and changed functionName() to check for
        Null or if the name is empty.
        (EnumScopes::Clone):
        (WebScriptCallFrame::WebScriptCallFrame):
        (WebScriptCallFrame::createInstance):
        (WebScriptCallFrame::caller):
        (WebScriptCallFrame::functionName):
        * WebScriptCallFrame.h: Ditto
        * WebScriptDebugServer.cpp: Made the listenerSet static since we were
        already treating it as if it were. Removed the EnumViews stuff.  This
        was added by Steve to demonstrate DCOM and he thought it would be needed
        by Drosera, but I don't believe it will be.
        Implemented suspendProcessIfPaused() also added calls to it at the end
        of several functions to ensure we pause if Drosera has told WebKit to.
        (WebScriptDebugServer::WebScriptDebugServer):
        (WebScriptDebugServer::sharedWebScriptDebugServer):
        (WebScriptDebugServer::addListener):
        (WebScriptDebugServer::removeListener):
        (WebScriptDebugServer::suspendProcessIfPaused):
        (WebScriptDebugServer::didLoadMainResourceForDataSource):
        (WebScriptDebugServer::didParseSource):
        (WebScriptDebugServer::failedToParseSource):
        (WebScriptDebugServer::didEnterCallFrame):
        (WebScriptDebugServer::willExecuteStatement):
        (WebScriptDebugServer::willLeaveCallFrame):
        (WebScriptDebugServer::exceptionWasRaised):
        * WebScriptDebugServer.h: Ditto.
        * WebScriptDebugger.cpp: The important change here is that leaveFrame()
        is called before willLeaveCallFrame().  I think there is some EOL stuff
        going on too.
        - It was the implementing of these functions that allows source, the
        source URLs and function stack to be displayed.
        (WebScriptDebugger::callEvent):
        (WebScriptDebugger::atStatement):
        (WebScriptDebugger::returnEvent):
        (WebScriptDebugger::exception):
        (WebScriptDebugger::enterFrame):
        (WebScriptDebugger::leaveFrame):
        * WebView.cpp: Removed the EnumView functions.
        (WebView::WebView):
        (WebView::~WebView):

WebKitTools:

        Reviewed by Adam.

        - Make Drosera show source, source URLs, and function stack on Windows,
        and some minor fixes.

        * Drosera/DebuggerDocument.cpp: Force source to always update display.
        (DebuggerDocument::updateFileSource):
        * Drosera/debugger.js: Force source to always update display.
        * Drosera/win/DebuggerClient.cpp: Create the needed functions for the
        menu controls.
        (DebuggerClient::resume):
        (DebuggerClient::pause):
        (DebuggerClient::stepInto):
        (DebuggerClient::stepOver):
        (DebuggerClient::stepOut):
        (DebuggerClient::showConsole):
        (DebuggerClient::closeCurrentFile):
        * Drosera/win/DebuggerClient.h: Ditto.
        * Drosera/win/DebuggerDocumentPlatform.cpp: Changed
        getPlatformCurrentFunctionStack to not use an unecessary HRESULT and
        removed two bugs.  1) caller could be in a bad state when asked to
        assign into it. 2) BSTRs were not created correctly.
        (DebuggerDocument::getPlatformCurrentFunctionStack):
        * Drosera/win/Drosera.cpp: Hook up the menu controls.
        (droseraWndProc):
        (handleCommand):
        (Drosera::resume):
        (Drosera::pause):
        (Drosera::stepInto):
        (Drosera::stepOver):
        (Drosera::stepOut):
        (Drosera::showConsole):
        (Drosera::closeCurrentFile):
        * Drosera/win/Drosera.h: Hook up the menu controls.
        * Drosera/win/ServerConnection.cpp: Removed unncessary server connection
        functions, added a null check, and fixed another bug where caller could
        be in a bad state when asked to assign into it.
        (ServerConnection::didLoadMainResourceForDataSource):
        (ServerConnection::getCallerFrame):
        * Drosera/win/ServerConnection.h: Safety first.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27769 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
WebKit/win/ChangeLog
WebKit/win/WebScriptCallFrame.cpp
WebKit/win/WebScriptCallFrame.h
WebKit/win/WebScriptDebugServer.cpp
WebKit/win/WebScriptDebugServer.h
WebKit/win/WebScriptDebugger.cpp
WebKit/win/WebView.cpp
WebKitTools/ChangeLog
WebKitTools/Drosera/DebuggerDocument.cpp
WebKitTools/Drosera/debugger.js
WebKitTools/Drosera/win/DebuggerClient.cpp
WebKitTools/Drosera/win/DebuggerClient.h
WebKitTools/Drosera/win/DebuggerDocumentPlatform.cpp
WebKitTools/Drosera/win/Drosera.cpp
WebKitTools/Drosera/win/Drosera.h
WebKitTools/Drosera/win/ServerConnection.cpp
WebKitTools/Drosera/win/ServerConnection.h