Bug 13644

Summary: Drosera needs a stand-alone console with its own JavaScript context
Product: WebKit Reporter: Garrett Smith <xk1t>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: oliver, xk1t
Priority: P2    
Version: 523.x (Safari 3)   
Hardware: Mac   
OS: OS X 10.4   

Description Garrett Smith 2007-05-09 10:16:08 PDT
Safari does not have a JavaScript debugger.

It is not practical to use print or alert functions for debugging. Especially when threading is used (setInterval, setTimeout).

A browser without a debugger is not suitable for rich application development.
Comment 1 Garrett Smith 2007-05-09 10:21:36 PDT
Safari needs a console that is read/write.

The console should allow "command line" execution of javascript.

Example:
> a = 3;
3
> b =2
2
> a + b
5
Comment 2 Brady Eidson 2007-05-09 10:27:31 PDT
Have you looked at Drosera?
Comment 3 Garrett Smith 2007-05-09 10:56:30 PDT
Drosera's console does look promising.

I keep getting an error with Drosera's console: "In order to eval your script, you need to pause the debugger."

That is after pausing. I restarted. I tried about:blank. Same error.

The UI could eventually use an eval or run button, and even possibly allow mulit-line input (return doesn't execute run).

Please reassign or move this bug to the appropriate component/group. 

Thank you.
Comment 4 David Kilzer (:ddkilzer) 2007-05-12 10:50:17 PDT
Confirmed with a local debug build of WebKit r21332 with Safari 2.0.4 (419.3) on Mac OS X 10.4.9 (8P135).

* STEPS TO REPRODUCE
1. Start Safari/Webkit.
2. Open one window with a URL of:  about:blank
3. Start Drosera.
4. Attach to Safari.
5. Click "Pause" button.
6. Click "Console" button.
7. Enter a JavaScript expression ("1 + 2") and hit enter in the Console.

* EXPECTED RESULTS
The statement should execute without a context in the Safari window (or there should be a way to create a stand-alone context).

* ACTUAL RESULTS
An error dialog is displayed that JavaScript execution must be paused before expressions may be evaluated.