third_party/js/mozmill/shared-modules/sessionstore.js
function aboutSessionRestore_getTabs(window) {
    var tabs = [ ];
    var tree = this.tabList.getNode();

    // Add entries when they are tabs (no container)
    var ii = window.listIndex + 1;
    while (ii < tree.view.rowCount && !tree.view.isContainer(ii)) {
      tabs.push({
                 index: tabs.length,
                 listIndex : ii,
                 restore: tree.view.getCellValue(ii, tree.columns.getColumnAt(0)),
                 title: tree.view.getCellText(ii, tree.columns.getColumnAt(2))
                });
      ii++;
    }

    return tabs;
  }
function aboutSessionRestore_getTabs(window) {
    var tabs = [ ];
    var tree = this.tabList.getNode();

    // Add entries when they are tabs (no container)
    var ii = window.listIndex + 1;
    while (ii < tree.view.rowCount && !tree.view.isContainer(ii)) {
      tabs.push({
                 index: tabs.length,
                 listIndex : ii,
                 restore: tree.view.getCellValue(ii, tree.columns.getColumnAt(0)),
                 title: tree.view.getCellText(ii, tree.columns.getColumnAt(2))
                });
      ii++;
    }

    return tabs;
  }
function aboutSessionRestore_getTabs ( window ) { var tabs = [ ] ; var tree = this . tabList . getNode ( ) ; // Add entries when they are tabs (no container) var ii = window . listIndex + 1 ; while ( ii < tree . view . rowCount && ! tree . view . isContainer ( ii ) ) { tabs . push ( { index : tabs . length , listIndex : ii , restore : tree . view . getCellValue ( ii , tree . columns . getColumnAt ( 0 ) ) , title : tree . view . getCellText ( ii , tree . columns . getColumnAt ( 2 ) ) } ) ; ii ++ ; } return tabs ; }
Get restorable tabs under the given window

@param {object} window
Window inside the tree
@returns List of tabs
@type {array of object}
Get restorable tabs under the given window