Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4186)

Unified Diff: chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc

Issue 1492273002: MD Downloads: limit the amount of downloads we send (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-dl-data
Patch Set: self-review Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc
diff --git a/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc b/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc
index 39d3cc3f462c678aebfff654073563253d9166aa..c274a71bb58d7cf3d369bc28baba3c6282e228f9 100644
--- a/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc
+++ b/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc
@@ -135,7 +135,7 @@ void MdDownloadsDOMHandler::RegisterMessages() {
void MdDownloadsDOMHandler::RenderViewReused(
content::RenderViewHost* render_view_host) {
- list_tracker_.Stop();
+ list_tracker_.Reset();
}
void MdDownloadsDOMHandler::HandleGetDownloads(const base::ListValue* args) {
@@ -143,9 +143,9 @@ void MdDownloadsDOMHandler::HandleGetDownloads(const base::ListValue* args) {
bool terms_changed = list_tracker_.SetSearchTerms(*args);
if (terms_changed)
- list_tracker_.CallClearAll();
+ list_tracker_.Reset();
- list_tracker_.Start();
+ list_tracker_.StartAndSendChunk();
}
void MdDownloadsDOMHandler::HandleOpenFile(const base::ListValue* args) {
@@ -238,6 +238,10 @@ void MdDownloadsDOMHandler::HandleUndo(const base::ListValue* args) {
const IdSet last_removed_ids = removals_.back();
removals_.pop_back();
+ const bool undoing_clear_all = last_removed_ids.size() > 1;
+ if (undoing_clear_all)
Dan Beam 2015/12/05 00:31:43 ^ this is how
+ list_tracker_.Reset();
+
for (auto id : last_removed_ids) {
content::DownloadItem* download = GetDownloadById(id);
if (!download)
@@ -251,6 +255,9 @@ void MdDownloadsDOMHandler::HandleUndo(const base::ListValue* args) {
model.SetIsBeingRevived(false);
}
+
+ if (undoing_clear_all)
+ list_tracker_.StartAndSendChunk();
}
void MdDownloadsDOMHandler::HandleCancel(const base::ListValue* args) {
@@ -268,8 +275,7 @@ void MdDownloadsDOMHandler::HandleClearAll(const base::ListValue* args) {
CountDownloadsDOMEvents(DOWNLOADS_DOM_EVENT_CLEAR_ALL);
- list_tracker_.CallClearAll();
- list_tracker_.Stop();
+ list_tracker_.Reset();
DownloadVector downloads;
if (GetMainNotifierManager())
@@ -278,7 +284,7 @@ void MdDownloadsDOMHandler::HandleClearAll(const base::ListValue* args) {
GetOriginalNotifierManager()->GetAllDownloads(&downloads);
RemoveDownloads(downloads);
- list_tracker_.Start();
+ list_tracker_.StartAndSendChunk();
}
void MdDownloadsDOMHandler::RemoveDownloads(const DownloadVector& to_remove) {

Powered by Google App Engine
This is Rietveld 408576698