private static void updateIndicator(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);
  }

  /*
private static void updateIndicator(ProgressIndicator indicator, long downloadSpeed, long bytesDownloaded, long contentLength, boolean progressDescription)