rem:  window.setTimeout( "window.close();", 2000 ); 
add:  dialog.progress.setAttribute( "value", 100 ); dialog.progress.setAttribute( "mode", "normal" ); try {  window.setTimeout( "window.close();", 2000 ); } catch ( exception ) { dump( "Error setting close timeout\n" ); for ( prop in exception ) { dump( "exception." + prop + "=" + exception[ prop ] + "\n" ); }  window.close();  dialog.cancel.childNodes[0].nodeValue = "Close"; } 
context: function onCompletion( status ) {    // Note that we're done (and can ignore subsequent progress notifications).    completed = true;    // Indicate completion in status area.    onStatus( "Download completed in " + formatSeconds( elapsed/1000 ) );    // Close the window in 2 seconds (to ensure user sees we're done).    window.setTimeout( "window.close();", 2000 );}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/88626d4e625eadc54ce5b057631e93f15034a456/downloadProgress.js/clean/xpfe/components/xfer/resources/downloadProgress.js