diff options
author | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-29 22:04:57 +0000 |
---|---|---|
committer | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-29 22:04:57 +0000 |
commit | 82f37b0d8c9b0e8e09c5e4debf98ddcb5bfbce09 (patch) | |
tree | da28f20debb7321045f81bbb54bf5e437071ddb0 /chrome/browser/dom_ui | |
parent | 947b1a563bceae4b78425424f0c0b88fa182ce22 (diff) | |
download | chromium_src-82f37b0d8c9b0e8e09c5e4debf98ddcb5bfbce09.zip chromium_src-82f37b0d8c9b0e8e09c5e4debf98ddcb5bfbce09.tar.gz chromium_src-82f37b0d8c9b0e8e09c5e4debf98ddcb5bfbce09.tar.bz2 |
Download code cleanup patch of death:
Separate all interactions with HistoryService out of DownloadManager
to new class DownloadHistory owned by the DownloadManager.
The goal is to create more smaller classes with clearly defined
responsibilities.
TEST=unit_tests, browser_tests, ui_tests
BUG=48913
Review URL: http://codereview.chromium.org/3071005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54205 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/dom_ui')
-rw-r--r-- | chrome/browser/dom_ui/downloads_dom_handler.cc | 17 | ||||
-rw-r--r-- | chrome/browser/dom_ui/downloads_dom_handler.h | 3 | ||||
-rw-r--r-- | chrome/browser/dom_ui/filebrowse_ui.cc | 6 |
3 files changed, 17 insertions, 9 deletions
diff --git a/chrome/browser/dom_ui/downloads_dom_handler.cc b/chrome/browser/dom_ui/downloads_dom_handler.cc index 581ab20..c1ba9d2 100644 --- a/chrome/browser/dom_ui/downloads_dom_handler.cc +++ b/chrome/browser/dom_ui/downloads_dom_handler.cc @@ -9,11 +9,13 @@ #include "base/singleton.h" #include "base/string_piece.h" #include "base/thread.h" +#include "base/utf_string_conversions.h" #include "base/values.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/chrome_thread.h" #include "chrome/browser/dom_ui/chrome_url_data_manager.h" #include "chrome/browser/dom_ui/fileicon_source.h" +#include "chrome/browser/download/download_history.h" #include "chrome/browser/download/download_item.h" #include "chrome/browser/download/download_util.h" #include "chrome/browser/metrics/user_metrics.h" @@ -110,15 +112,16 @@ void DownloadsDOMHandler::OnDownloadUpdated(DownloadItem* download) { } // A download has started or been deleted. Query our DownloadManager for the -// current set of downloads, which will call us back in SetDownloads once it -// has retrieved them. +// current set of downloads. void DownloadsDOMHandler::ModelChanged() { ClearDownloadItems(); - download_manager_->GetDownloads(this, search_text_); + download_manager_->download_history()->Search( + WideToUTF16(search_text_), + NewCallback(this, &DownloadsDOMHandler::OnSearchDownloadsComplete)); } -void DownloadsDOMHandler::SetDownloads( - std::vector<DownloadItem*>& downloads) { +void DownloadsDOMHandler::OnSearchDownloadsComplete( + std::vector<DownloadItem*> downloads) { ClearDownloadItems(); // Swap new downloads in. @@ -149,7 +152,9 @@ void DownloadsDOMHandler::HandleGetDownloads(const Value* value) { if (search_text_.compare(new_search) != 0) { search_text_ = new_search; ClearDownloadItems(); - download_manager_->GetDownloads(this, search_text_); + download_manager_->download_history()->Search( + WideToUTF16(search_text_), + NewCallback(this, &DownloadsDOMHandler::OnSearchDownloadsComplete)); } else { SendCurrentDownloads(); } diff --git a/chrome/browser/dom_ui/downloads_dom_handler.h b/chrome/browser/dom_ui/downloads_dom_handler.h index 32ab2bf..06b48d6 100644 --- a/chrome/browser/dom_ui/downloads_dom_handler.h +++ b/chrome/browser/dom_ui/downloads_dom_handler.h @@ -35,7 +35,8 @@ class DownloadsDOMHandler : public DOMMessageHandler, // DownloadManager::Observer interface virtual void ModelChanged(); - virtual void SetDownloads(std::vector<DownloadItem*>& downloads); + + void OnSearchDownloadsComplete(std::vector<DownloadItem*> downloads); // Callback for the "getDownloads" message. void HandleGetDownloads(const Value* value); diff --git a/chrome/browser/dom_ui/filebrowse_ui.cc b/chrome/browser/dom_ui/filebrowse_ui.cc index 7886752..8bab7cd 100644 --- a/chrome/browser/dom_ui/filebrowse_ui.cc +++ b/chrome/browser/dom_ui/filebrowse_ui.cc @@ -126,7 +126,8 @@ class FilebrowseHandler : public net::DirectoryLister::DirectoryListerDelegate, // DownloadManager::Observer interface virtual void ModelChanged(); - virtual void SetDownloads(std::vector<DownloadItem*>& downloads); + + void OnSearchDownloadsComplete(std::vector<DownloadItem*> downloads); // Callback for the "getRoots" message. void HandleGetRoots(const Value* value); @@ -969,7 +970,8 @@ void FilebrowseHandler::ModelChanged() { download_manager_->GetAllDownloads(this, FilePath()); } -void FilebrowseHandler::SetDownloads(std::vector<DownloadItem*>& downloads) { +void FilebrowseHandler::OnSearchDownloadsComplete( + std::vector<DownloadItem*> downloads) { ClearDownloadItems(); std::vector<DownloadItem*> new_downloads; // Scan for any in progress downloads and add ourself to them as an observer. |