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

Unified Diff: chrome/browser/webdata/web_data_service.cc

Issue 10824212: Add support for unregistering web intents default by service_url. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Do test setup verification prior to verifying remove/unregister support. Created 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/webdata/web_data_service.cc
diff --git a/chrome/browser/webdata/web_data_service.cc b/chrome/browser/webdata/web_data_service.cc
index ee9925797fbec1d062da2ecbdbcfe2b77cac6073..13ea9eb5a6d211e5b142c73b25154a48ed01efa7 100644
--- a/chrome/browser/webdata/web_data_service.cc
+++ b/chrome/browser/webdata/web_data_service.cc
@@ -334,6 +334,19 @@ void WebDataService::RemoveDefaultWebIntentService(
request));
}
+void WebDataService::RemoveDefaultWebIntentServiceForServiceURL(
+ const GURL& service_url) {
+ GenericRequest<GURL>* request =
+ new GenericRequest<GURL>(
+ this, GetNextRequestHandle(), NULL, service_url);
+ RegisterRequest(request);
+ ScheduleTask(
+ FROM_HERE,
+ Bind(&WebDataService::RemoveDefaultWebIntentServiceForServiceURLImpl,
+ this,
+ request));
James Hawkins 2012/08/08 16:22:37 Optional nit: Condense parameters to save a line.
Steve McKay 2012/08/08 17:54:42 Collapsed entire call after method renaming.
+}
+
WebDataService::Handle WebDataService::GetDefaultWebIntentServicesForAction(
const string16& action,
WebDataServiceConsumer* consumer) {
@@ -965,6 +978,17 @@ void WebDataService::RemoveDefaultWebIntentServiceImpl(
request->RequestComplete();
}
+void WebDataService::RemoveDefaultWebIntentServiceForServiceURLImpl(
+ GenericRequest<GURL>* request) {
+ InitializeDatabaseIfNecessary();
+ if (db_ && !request->IsCancelled(NULL)) {
+ const GURL& service_url = request->arg();
+ db_->GetWebIntentsTable()->RemoveDefaultServicesForServiceURL(service_url);
+ ScheduleCommit();
+ }
+ request->RequestComplete();
+}
+
void WebDataService::GetDefaultWebIntentServicesForActionImpl(
GenericRequest<string16>* request) {
InitializeDatabaseIfNecessary();

Powered by Google App Engine
This is Rietveld 408576698