Firebug 1.8 API Changes

From FirebugWiki
Revision as of 02:33, 24 May 2011 by Honza (Talk | contribs)

Jump to: navigation, search

TODO: This is only a rough list of changes, more explanation needed.

  • Firebug source files use Asynchronous Module Definition (AMD)
  • firebug-http-observer (JS module) is obsolete. Use "firebug/http/requestObserver"
  • FBL.CCIN, FBL.CCSV and FBL.QI are obsolete, use "firebug/lib/xpcom"
  • firebug-trace-service is obsolete, use "firebug/lib/trace"
  • HTMLLib is not part of Firebug namespace, you need to include "firebug/lib/htmlLib.js
  • $STR, $STRP, $STRP, registerStringBundle, getStringBundle, getDefaultStringBundle, getPluralRule, internationalize and internationalizeElements are part of "firebug/lib/locale"
  • dispatch and dispatch2 are part of "firebug/lib/events" module
  • All preferences should be accessed through firebug/lib/options module
  • FBL.deprecated is now Deprecated.deprecated (firebug/lib/deprecated)
  • FBTrace comes from "firebug/lib/trace"
  • New modules: url, wrapper (don't use the API from FBL)
  • FBL.findNext and FBL.findPrevious no longer exist.
  • FirebugChrome namespace: getBrowsers, getCurrentBrowsers, getCurrentURI API removed and part of firefox/firefox module
  • There is a new <div> fbMainFrame (wrapping fbContentBox)
  • New $ API:
  • FirebugChrome is obsolete global (still available in 1.8 perhaps) and replaced by
  • Firebug.getTabForWindow and getTabIdForWindow is removed, use firefox/window getWindowProxyIdForWindow
  • FBL.openWindow, FBL.viewSource, FBL.getBrowserForWindow are part of firefox/firefox
  • FBL.ToggleBranch is now ToggleBranch.ToggleBranch
  • FBL.Continued removed.
  • FBL.isAncestorIgnored removed
  • FBL.ErrorMessage -> FirebugReps.ErrorMessageObj
  • FBL.fatalError removed
  • FBL.ErrorCopy -> FirebugReps.ErrorCopy
  • FBL.EventCopy -> DOM.EventCopy
  • FBL.Property -> FirebugReps.PropertyObj

FBL.findScripts = Firebug.SourceFile.findScripts; FBL.findScriptForFunctionInContext = Firebug.SourceFile.findScriptForFunctionInContext; FBL.findSourceForFunction = Firebug.SourceFile.findSourceForFunction; FBL.getSourceLinkForScript = Firebug.SourceFile.getSourceLinkForScript; FBL.getSourceFileByHref = Firebug.SourceFile.getSourceFileByHref; FBL.sourceURLsAsArray = Firebug.SourceFile.sourceURLsAsArray; FBL.sourceFilesAsArray = Firebug.SourceFile.sourceFilesAsArray; FBL.mapAsArray = Firebug.SourceFile.mapAsArray;

  • If you using FBL in separate XUL windows, make sure you don't include files like (you need to pass FBL and Firebug globals through window arguments.

<script type="application/x-javascript" src="chrome://firebug/content/xpcom.js"/> <script type="application/x-javascript" src="chrome://firebug/content/lib.js"/>

Or accessing it from the browser window:

const windowMediator = Cc[";1"].getService(Ci.nsIWindowMediator); var FBL = windowMediator.getMostRecentWindow("navigator:browser").FBL;