| Index: chrome/browser/download/download_item.cc
|
| diff --git a/chrome/browser/download/download_item.cc b/chrome/browser/download/download_item.cc
|
| index c05823a65171623ea0c6acbc8019f05716b66a16..48538fc5281aa11c8d642c1ec44e4f576750dc7f 100644
|
| --- a/chrome/browser/download/download_item.cc
|
| +++ b/chrome/browser/download/download_item.cc
|
| @@ -63,7 +63,8 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
|
| is_extension_install_(info.is_extension_install),
|
| name_finalized_(false),
|
| is_temporary_(false),
|
| - need_final_rename_(false) {
|
| + need_final_rename_(false),
|
| + opened_(false) {
|
| if (state_ == IN_PROGRESS)
|
| state_ = CANCELLED;
|
| Init(false /* don't start progress timer */);
|
| @@ -99,7 +100,8 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
|
| is_extension_install_(info.is_extension_install),
|
| name_finalized_(false),
|
| is_temporary_(!info.save_info.file_path.empty()),
|
| - need_final_rename_(false) {
|
| + need_final_rename_(false),
|
| + opened_(false) {
|
| Init(true /* start progress timer */);
|
| }
|
|
|
| @@ -134,7 +136,8 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
|
| is_extension_install_(false),
|
| name_finalized_(false),
|
| is_temporary_(false),
|
| - need_final_rename_(false) {
|
| + need_final_rename_(false),
|
| + opened_(false) {
|
| Init(true /* start progress timer */);
|
| }
|
|
|
| @@ -180,11 +183,15 @@ void DownloadItem::OpenDownload() {
|
| if (state() == DownloadItem::IN_PROGRESS) {
|
| open_when_complete_ = !open_when_complete_;
|
| } else if (state() == DownloadItem::COMPLETE) {
|
| - FOR_EACH_OBSERVER(Observer, observers_, OnDownloadOpened(this));
|
| download_manager_->OpenDownload(this, NULL);
|
| }
|
| }
|
|
|
| +void DownloadItem::Opened() {
|
| + opened_ = true;
|
| + FOR_EACH_OBSERVER(Observer, observers_, OnDownloadOpened(this));
|
| +}
|
| +
|
| void DownloadItem::ShowDownloadInShell() {
|
| download_manager_->ShowDownloadInShell(this);
|
| }
|
|
|