Firebug 1.7 Script Panel
From FirebugWiki
Contents |
[edit] Overview
This page summarizes the things that should be changed/ported/created in Firebug Lite 1.4+ in order to support the New Script Panel with the goal of supporting remote and cross-browser JavaScript debugging features.
Related pages:
[edit] Minor differences
See also minor Firebug Lite differences from Firebug.
TODO: Update Firebug_Lite_Differences_From_Firebug#Minor_Differences section
with the new info provided here
- const --> var
- addEventListener --> adEvent
- element.getElementsByClassName(name) --> FBL.getElementsByClass(element, name)
- named functions --> variables
- target = event.target || event.srcElement
- Array.indexOf --> (" " + str + " ").indexOf trick
[edit] Back-end platform dependencies
The dependencies listed here only counts the debugger.js file specifically. There are more dependencies in the files required by debugger.js.
- jsd
- Ci.jsdIScript;
- Ci.jsdIStackFrame;
- Ci.jsdIExecutionHook;
- Ci.nsISupports;
- Ci.nsICryptoHash;
- Ci.nsIURI
[edit] Lite's missing pieces
Here's the list of things we need to port, change or create in Firebug Lite in order to support the New Script Panel.
[edit] items to port
User Interface Controller
- Chrome
Context Management
- browser (XUL-browser abstraction)
- tabContext
- tabWatcher
Source Management
- sourceBox
- sourceFile?
- sourceCache?
Library Functions
- FBL.getUniqueId
- FBL.persistObjects
- FBL.sourceFilesAsArray
- FBL.appendInnerHTML
Activable Modules and Panels
- Firebug.registerActivableModule
- Firebug.ActivableModule
- Firebug.ActivablePanel
[edit] items to change
Firebug Panel implementation
- Panel create/destroy methods
- Panel initialize/shutdown methods
- Panel show/hide methods
- Panel initializeUI method
Firebug API
- Firebug getPref/setPref
- SidePanel API
Graphical Components
- GUI.Menu
- infoTip
User Interface Refactoring
- UI tabs on top*
- commandLine available at all panels*
[*] Not exactly required by the New Script Panel, but it would be good to Firebug Lite match the Firefox visual to reinforce the new unifying model, and is something to be considered when designing/porting the new modules.
[edit] items to create
Graphical Components
- GUI.ToolButton (panel buttons)
- GUI.OptionsMenu (panel options)
- GUI.ScrollableMenu (file selection)
- GUI.StatusBar (call stack)