Index: chrome/browser/download/download_item.cc |
diff --git a/chrome/browser/download/download_item.cc b/chrome/browser/download/download_item.cc |
index f87045109c37ee804255d3b9a655d902ef12a2ab..59aafc488bb8ce10e0f020b31f42252aabe6f590 100644 |
--- a/chrome/browser/download/download_item.cc |
+++ b/chrome/browser/download/download_item.cc |
@@ -27,6 +27,23 @@ |
#include "chrome/common/extensions/extension.h" |
#include "chrome/common/pref_names.h" |
+// A DownloadItem normally goes through the following states: |
+// * Created (when download starts) |
+// * Made visible to consumers (e.g. Javascript) after the |
+// destination file has been determined. |
+// * Entered into the history database. |
+// * Made visible in the download shelf. |
+// * All data is received. Note that the actual data download occurs |
+// in parallel with the above steps, but until those steps are |
+// complete, completion of the data download will be ignored. |
+// * Download file is renamed to its final name, and possibly |
+// auto-opened. |
+// TODO(rdsmith): This progress should be reflected in |
+// DownloadItem::DownloadState and a state transition table/state diagram. |
+// |
+// TODO(rdsmith): This description should be updated to reflect the cancel |
+// pathways. |
+ |
namespace { |
// Update frequency (milliseconds). |
@@ -296,7 +313,7 @@ void DownloadItem::Cancel(bool update_history) { |
download_manager_->DownloadCancelled(id_); |
} |
-void DownloadItem::OnAllDataSaved(int64 size) { |
+void DownloadItem::OnReadyToFinish(int64 size) { |
state_ = COMPLETE; |
UpdateSize(size); |
StopProgressTimer(); |
@@ -321,7 +338,7 @@ void DownloadItem::Finished() { |
auto_opened_ = true; |
} |
- // Notify our observers that we are complete (the call to OnAllDataSaved() |
+ // Notify our observers that we are complete (the call to OnReadyToFinish() |
// set the state to complete but did not notify). |
UpdateObservers(); |