add:   var progressmeter = document.getAnonymousElementByAttribute(getDownload(dl.id), "anonid", "progressmeter"); var event = document.createEvent('Events'); event.initEvent('ValueChange', true, true); progressmeter.dispatchEvent(event); 
context: function onUpdateProgress(){  var numActiveDownloads = gActiveDownloads.length;  if (numActiveDownloads == 0) {    document.title = document.documentElement.getAttribute("statictitle");    gLastComputedMean = -1;    return;  }      var mean = 0;  var base = 0;  var dl = null;  for (var i = 0; i < numActiveDownloads; ++i) {    dl = gActiveDownloads[i];    // Update progress    getDownload(dl.id).setAttribute("progress", dl.percentComplete);    // gActiveDownloads is screwed so it's possible     // to have more files than we're really downloading.    // The good news is that those files have size==0.    // Same with files with unknown size. Their size==0.    if (dl.percentComplete < 100 && dl.size > 0) {      mean += dl.amountTransferred;      base += dl.size;    }  }  // we're not downloading anything at the moment,  // but we already downloaded something.  if (base == 0) {    mean = 100;  } else {    mean = Math.floor((mean / base) * 100);  }  if (mean != gLastComputedMean || gLastActiveDownloads != numActiveDownloads) {    gLastComputedMean = mean;    gLastActiveDownloads = numActiveDownloads;        var strings = document.getElementById("downloadStrings");        var title;    if (numActiveDownloads > 1)      title = strings.getFormattedString("downloadsTitleMultiple", [mean, numActiveDownloads]);    else      title = strings.getFormattedString("downloadsTitle", [mean]);    document.title = title;  }}
meta: 10520	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/10520/dc6c055ed6c2706234faa0ca688cc8678e946f2d/downloads.js/buggy/toolkit/mozapps/downloads/content/downloads.js