code: function DOMWalker_walk(ids, root, waitFunction) {
      if (typeof waitFunction == 'function')
        this._controller.waitFor(waitFunction());
  
      if (!root)
        root = this._controller.window.document.documentElement;
  
      var resultsArray = this._walk(root);
  
      if (typeof this._callbackResults == 'function')
        this._callbackResults(this._controller, resultsArray);
  
      if (ids)
        this._prepareTargetWindows(ids);
    }
docs: The main DOMWalker function.
  
  It start's the _walk-method for a given window or other dialog, runs
  a callback to process the results for that window/dialog.
  After that switches to provided new windows/dialogs.
  
  @param {array of objects} ids
  Contains informations on the elements to open while
  Object-elements:  getBy         - attribute-name of the attribute
  containing the identification
  information for the opener-element
  subContent    - array of ids of the opener-elements
  in the window with the value of
  the above getBy-attribute
  target        - information, where the new
  elements will be opened
  [1|2|4]
  title         - title of the opened dialog/window
  waitFunction  - The function used as an argument
  for MozmillController.waitFor to
  wait before starting the walk.
  [optional - default: no waiting]
  windowHandler - Window instance
  [only needed for some tests]
  
  @param {Node} root
  Node to start testing from
  [optional - default: this._controller.window.document.documentElement]
  @param {Function} waitFunction
  The function used as an argument for MozmillController.waitFor to
  wait before starting the walk.
  [optional - default: no waiting]