Version 15 (modified by nhoyt, 8 years ago) (diff)



This section includes descriptions of AInspector for Firefox prototypes, each of which meets some basic set of interaction or user interface objectives.

At the bottom of this page under Attachments are links to prototype XPI files.

Completed Prototypes


Overview: Tests the use of toolbars within the sidebar, in the absence of a separate toolbar.

  • test using a sidebar with self-contained toolbars
  • test using keyboard shortcut for toggling sidebar
  • test and debug shell script (in utilities) for programmatic creation of XPI files
  • tagged as prototype-baseline-00


Overview: Tests the use of overlays for reusable XUL components; tests the use of utility functions in shared modules, especially the Progress Listener for detecting page loads. (Based on prototype-baseline-00)

  • test and debug logging.js (in utilities)
  • test and debug inspection.js (in utilities)
  • add use of progress.js (in utilities) for handling page load events and browser tab switching (also works when new browser window is opened)
  • add summary widget that displays the current URL after a page has loaded, and a progress meter during page loads
  • test the use of overlays for reusable widgets (summary widget)
  • create application framework/template that indicates where in the code namespace initialization, logging configuration and event listener addition should take place
  • tagged as prototype-baseline-01


Overview: Adds an independent AInspector Toolbar (distinct from the toolbar within the sidebar) and manages view selection state across the toolbar buttons. (Based on prototype-baseline-01)

  • add a separate toolbar with buttons for controlling the view within the sidebar
  • ensure that if sidebar is displayed, toolbar is also displayed (not necessary vice versa: okay to display toolbar by itself)
  • add keyboard shortcut to toggle AInspector Toolbar, and register is with toolbar element (shows up in View > Toolbars menu)
  • tagged as prototype-baseline-02


Overview: Adds an independent AInspector Menu (distinct from the Views menu at the bottom of the sidebar) and manages its checked state. (Based on prototype-baseline-02)

  • add top-level AInspector menu
  • add use of command elements to enable sharing of command actions and labels
  • add ai-commands.js as an overlay, which contains commandset and keyset used both at top-level and in sidebar menu
  • add functions for setting state of Tools menuitem: AInspector Menu
  • tagged as prototype-baseline-03


Overview: Simplifies the interaction model by providing only one way of selecting AInspector Toolbar, Sidebar and Menu from top menubar. (Based on prototype-baseline-03)

  • simplify Tools menu (in main menubar) and Options menu (in sidebar's bottom toolbar) menus
  • abandon attempts to manage state of Views menu in sidebar due to insufficient API/documentation and API defects
  • move modules/ainspector-common.js to chrome/content/ai-common.js
  • tagged as prototype-baseline-04

Planned Prototypes


  • create tree and list view widgets based on overlays
  • add code that uses OAA Evaluation Library API to populate tree and list widgets (in particular, get rules in rule category)