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

Side by Side Diff: chrome/browser/ui/webui/history2_ui.cc

Issue 7554008: Removal of Profile from content part 6. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 9 years, 4 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/webui/history2_ui.h" 5 #include "chrome/browser/ui/webui/history2_ui.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/i18n/time_formatting.h" 10 #include "base/i18n/time_formatting.h"
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 : search_text_() { 89 : search_text_() {
90 } 90 }
91 91
92 BrowsingHistoryHandler2::~BrowsingHistoryHandler2() { 92 BrowsingHistoryHandler2::~BrowsingHistoryHandler2() {
93 cancelable_search_consumer_.CancelAllRequests(); 93 cancelable_search_consumer_.CancelAllRequests();
94 cancelable_delete_consumer_.CancelAllRequests(); 94 cancelable_delete_consumer_.CancelAllRequests();
95 } 95 }
96 96
97 WebUIMessageHandler* BrowsingHistoryHandler2::Attach(WebUI* web_ui) { 97 WebUIMessageHandler* BrowsingHistoryHandler2::Attach(WebUI* web_ui) {
98 // Create our favicon data source. 98 // Create our favicon data source.
99 Profile* profile = web_ui->GetProfile(); 99 Profile* profile =
100 Profile::FromBrowserContext(web_ui->tab_contents()->browser_context());
100 profile->GetChromeURLDataManager()->AddDataSource( 101 profile->GetChromeURLDataManager()->AddDataSource(
101 new FaviconSource(profile, FaviconSource::FAVICON)); 102 new FaviconSource(profile, FaviconSource::FAVICON));
102 103
103 // Get notifications when history is cleared. 104 // Get notifications when history is cleared.
104 registrar_.Add(this, chrome::NOTIFICATION_HISTORY_URLS_DELETED, 105 registrar_.Add(this, chrome::NOTIFICATION_HISTORY_URLS_DELETED,
105 Source<Profile>(web_ui->GetProfile()->GetOriginalProfile())); 106 Source<Profile>(profile->GetOriginalProfile()));
106 return WebUIMessageHandler::Attach(web_ui); 107 return WebUIMessageHandler::Attach(web_ui);
107 } 108 }
108 109
109 void BrowsingHistoryHandler2::RegisterMessages() { 110 void BrowsingHistoryHandler2::RegisterMessages() {
110 web_ui_->RegisterMessageCallback("getHistory", 111 web_ui_->RegisterMessageCallback("getHistory",
111 NewCallback(this, &BrowsingHistoryHandler2::HandleGetHistory)); 112 NewCallback(this, &BrowsingHistoryHandler2::HandleGetHistory));
112 web_ui_->RegisterMessageCallback("searchHistory", 113 web_ui_->RegisterMessageCallback("searchHistory",
113 NewCallback(this, &BrowsingHistoryHandler2::HandleSearchHistory)); 114 NewCallback(this, &BrowsingHistoryHandler2::HandleSearchHistory));
114 web_ui_->RegisterMessageCallback("removeURLsOnOneDay", 115 web_ui_->RegisterMessageCallback("removeURLsOnOneDay",
115 NewCallback(this, &BrowsingHistoryHandler2::HandleRemoveURLsOnOneDay)); 116 NewCallback(this, &BrowsingHistoryHandler2::HandleRemoveURLsOnOneDay));
(...skipping 12 matching lines...) Expand all
128 // Set our query options. 129 // Set our query options.
129 history::QueryOptions options; 130 history::QueryOptions options;
130 options.begin_time = base::Time::Now().LocalMidnight(); 131 options.begin_time = base::Time::Now().LocalMidnight();
131 options.begin_time -= base::TimeDelta::FromDays(day); 132 options.begin_time -= base::TimeDelta::FromDays(day);
132 options.end_time = base::Time::Now().LocalMidnight(); 133 options.end_time = base::Time::Now().LocalMidnight();
133 options.end_time -= base::TimeDelta::FromDays(day - 1); 134 options.end_time -= base::TimeDelta::FromDays(day - 1);
134 135
135 // Need to remember the query string for our results. 136 // Need to remember the query string for our results.
136 search_text_ = string16(); 137 search_text_ = string16();
137 138
138 HistoryService* hs = 139 Profile* profile =
139 web_ui_->GetProfile()->GetHistoryService(Profile::EXPLICIT_ACCESS); 140 Profile::FromBrowserContext(web_ui_->tab_contents()->browser_context());
141 HistoryService* hs = profile->GetHistoryService(Profile::EXPLICIT_ACCESS);
140 hs->QueryHistory(search_text_, 142 hs->QueryHistory(search_text_,
141 options, 143 options,
142 &cancelable_search_consumer_, 144 &cancelable_search_consumer_,
143 NewCallback(this, &BrowsingHistoryHandler2::QueryComplete)); 145 NewCallback(this, &BrowsingHistoryHandler2::QueryComplete));
144 } 146 }
145 147
146 void BrowsingHistoryHandler2::HandleSearchHistory(const ListValue* args) { 148 void BrowsingHistoryHandler2::HandleSearchHistory(const ListValue* args) {
147 // Anything in-flight is invalid. 149 // Anything in-flight is invalid.
148 cancelable_search_consumer_.CancelAllRequests(); 150 cancelable_search_consumer_.CancelAllRequests();
149 151
150 // Get arguments (if any). 152 // Get arguments (if any).
151 int month = 0; 153 int month = 0;
152 string16 query; 154 string16 query;
153 ExtractSearchHistoryArguments(args, &month, &query); 155 ExtractSearchHistoryArguments(args, &month, &query);
154 156
155 // Set the query ranges for the given month. 157 // Set the query ranges for the given month.
156 history::QueryOptions options = CreateMonthQueryOptions(month); 158 history::QueryOptions options = CreateMonthQueryOptions(month);
157 159
158 // When searching, limit the number of results returned. 160 // When searching, limit the number of results returned.
159 options.max_count = kMaxSearchResults; 161 options.max_count = kMaxSearchResults;
160 162
161 // Need to remember the query string for our results. 163 // Need to remember the query string for our results.
162 search_text_ = query; 164 search_text_ = query;
163 HistoryService* hs = 165 Profile* profile =
164 web_ui_->GetProfile()->GetHistoryService(Profile::EXPLICIT_ACCESS); 166 Profile::FromBrowserContext(web_ui_->tab_contents()->browser_context());
167 HistoryService* hs = profile->GetHistoryService(Profile::EXPLICIT_ACCESS);
165 hs->QueryHistory(search_text_, 168 hs->QueryHistory(search_text_,
166 options, 169 options,
167 &cancelable_search_consumer_, 170 &cancelable_search_consumer_,
168 NewCallback(this, &BrowsingHistoryHandler2::QueryComplete)); 171 NewCallback(this, &BrowsingHistoryHandler2::QueryComplete));
169 } 172 }
170 173
171 void BrowsingHistoryHandler2::HandleRemoveURLsOnOneDay(const ListValue* args) { 174 void BrowsingHistoryHandler2::HandleRemoveURLsOnOneDay(const ListValue* args) {
172 if (cancelable_delete_consumer_.HasPendingRequests()) { 175 if (cancelable_delete_consumer_.HasPendingRequests()) {
173 web_ui_->CallJavascriptFunction("deleteFailed"); 176 web_ui_->CallJavascriptFunction("deleteFailed");
174 return; 177 return;
(...skipping 15 matching lines...) Expand all
190 v != args->end(); ++v) { 193 v != args->end(); ++v) {
191 if ((*v)->GetType() != Value::TYPE_STRING) 194 if ((*v)->GetType() != Value::TYPE_STRING)
192 continue; 195 continue;
193 const StringValue* string_value = static_cast<const StringValue*>(*v); 196 const StringValue* string_value = static_cast<const StringValue*>(*v);
194 string16 string16_value; 197 string16 string16_value;
195 if (!string_value->GetAsString(&string16_value)) 198 if (!string_value->GetAsString(&string16_value))
196 continue; 199 continue;
197 urls.insert(GURL(string16_value)); 200 urls.insert(GURL(string16_value));
198 } 201 }
199 202
200 HistoryService* hs = 203 Profile* profile =
201 web_ui_->GetProfile()->GetHistoryService(Profile::EXPLICIT_ACCESS); 204 Profile::FromBrowserContext(web_ui_->tab_contents()->browser_context());
205 HistoryService* hs = profile->GetHistoryService(Profile::EXPLICIT_ACCESS);
202 hs->ExpireHistoryBetween( 206 hs->ExpireHistoryBetween(
203 urls, begin_time, end_time, &cancelable_delete_consumer_, 207 urls, begin_time, end_time, &cancelable_delete_consumer_,
204 NewCallback(this, &BrowsingHistoryHandler2::RemoveComplete)); 208 NewCallback(this, &BrowsingHistoryHandler2::RemoveComplete));
205 } 209 }
206 210
207 void BrowsingHistoryHandler2::HandleClearBrowsingData(const ListValue* args) { 211 void BrowsingHistoryHandler2::HandleClearBrowsingData(const ListValue* args) {
208 // TODO(beng): This is an improper direct dependency on Browser. Route this 212 // TODO(beng): This is an improper direct dependency on Browser. Route this
209 // through some sort of delegate. 213 // through some sort of delegate.
210 Browser* browser = BrowserList::FindBrowserWithProfile(web_ui_->GetProfile()); 214 Profile* profile =
215 Profile::FromBrowserContext(web_ui_->tab_contents()->browser_context());
216 Browser* browser = BrowserList::FindBrowserWithProfile(profile);
211 if (browser) 217 if (browser)
212 browser->OpenClearBrowsingDataDialog(); 218 browser->OpenClearBrowsingDataDialog();
213 } 219 }
214 220
215 void BrowsingHistoryHandler2::QueryComplete( 221 void BrowsingHistoryHandler2::QueryComplete(
216 HistoryService::Handle request_handle, 222 HistoryService::Handle request_handle,
217 history::QueryResults* results) { 223 history::QueryResults* results) {
218 224
219 ListValue results_value; 225 ListValue results_value;
220 base::Time midnight_today = base::Time::Now().LocalMidnight(); 226 base::Time midnight_today = base::Time::Now().LocalMidnight();
(...skipping 26 matching lines...) Expand all
247 base::TimeFormatFriendlyDate(page.visit_time())); 253 base::TimeFormatFriendlyDate(page.visit_time()));
248 } 254 }
249 page_value->SetString("dateRelativeDay", date_str); 255 page_value->SetString("dateRelativeDay", date_str);
250 page_value->SetString("dateTimeOfDay", 256 page_value->SetString("dateTimeOfDay",
251 base::TimeFormatTimeOfDay(page.visit_time())); 257 base::TimeFormatTimeOfDay(page.visit_time()));
252 } else { 258 } else {
253 page_value->SetString("dateShort", 259 page_value->SetString("dateShort",
254 base::TimeFormatShortDate(page.visit_time())); 260 base::TimeFormatShortDate(page.visit_time()));
255 page_value->SetString("snippet", page.snippet().text()); 261 page_value->SetString("snippet", page.snippet().text());
256 } 262 }
263 Profile* profile =
264 Profile::FromBrowserContext(web_ui_->tab_contents()->browser_context());
257 page_value->SetBoolean("starred", 265 page_value->SetBoolean("starred",
258 web_ui_->GetProfile()->GetBookmarkModel()->IsBookmarked(page.url())); 266 profile->GetBookmarkModel()->IsBookmarked(page.url()));
259 results_value.Append(page_value); 267 results_value.Append(page_value);
260 } 268 }
261 269
262 DictionaryValue info_value; 270 DictionaryValue info_value;
263 info_value.SetString("term", search_text_); 271 info_value.SetString("term", search_text_);
264 info_value.SetBoolean("finished", results->reached_beginning()); 272 info_value.SetBoolean("finished", results->reached_beginning());
265 273
266 web_ui_->CallJavascriptFunction("historyResult", info_value, results_value); 274 web_ui_->CallJavascriptFunction("historyResult", info_value, results_value);
267 } 275 }
268 276
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 const GURL HistoryUI2::GetHistoryURLWithSearchText(const string16& text) { 379 const GURL HistoryUI2::GetHistoryURLWithSearchText(const string16& text) {
372 return GURL(std::string(chrome::kChromeUIHistory2URL) + "#q=" + 380 return GURL(std::string(chrome::kChromeUIHistory2URL) + "#q=" +
373 EscapeQueryParamValue(UTF16ToUTF8(text), true)); 381 EscapeQueryParamValue(UTF16ToUTF8(text), true));
374 } 382 }
375 383
376 // static 384 // static
377 RefCountedMemory* HistoryUI2::GetFaviconResourceBytes() { 385 RefCountedMemory* HistoryUI2::GetFaviconResourceBytes() {
378 return ResourceBundle::GetSharedInstance(). 386 return ResourceBundle::GetSharedInstance().
379 LoadDataResourceBytes(IDR_HISTORY_FAVICON); 387 LoadDataResourceBytes(IDR_HISTORY_FAVICON);
380 } 388 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698