void (ProgressIndicator indicator, long downloadSpeed, long bytesDownloaded, long contentLength, boolean progressDescription) { double fraction = (double)bytesDownloaded / contentLength; if (progressDescription) { int rankForContentLength = StringUtilRt.rankForFileSize(contentLength); String formattedDownloadSpeed = StringUtilRt.formatFileSize(downloadSpeed) + "⧸s"; String formattedContentLength = StringUtilRt.formatFileSize(contentLength, " ", rankForContentLength); String formattedTotalProgress = StringUtilRt.formatFileSize(bytesDownloaded, " ", rankForContentLength); @NlsSafe String indicatorText = String.format("<html><code>%.0f%% · %s⧸%s · %s</code></html>", fraction * 100, formattedTotalProgress, formattedContentLength, formattedDownloadSpeed); indicator.setText2(indicatorText); } indicator.setFraction(fraction); }