diff options
author | jorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-11 17:46:13 +0000 |
---|---|---|
committer | jorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-11 17:46:13 +0000 |
commit | a3703dd92f9779ada9486a9781b05d071e836099 (patch) | |
tree | bb9673d0a5eb14cc5953f86808d17d45e78d805f /chrome/browser/renderer_host/database_permission_request.cc | |
parent | 18fe172980c11836c129b4cdc30e5530c77c10a0 (diff) | |
download | chromium_src-a3703dd92f9779ada9486a9781b05d071e836099.zip chromium_src-a3703dd92f9779ada9486a9781b05d071e836099.tar.gz chromium_src-a3703dd92f9779ada9486a9781b05d071e836099.tar.bz2 |
Add support for CONTENT_SETTING_ASK to database.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/572001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38783 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/database_permission_request.cc')
-rw-r--r-- | chrome/browser/renderer_host/database_permission_request.cc | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/chrome/browser/renderer_host/database_permission_request.cc b/chrome/browser/renderer_host/database_permission_request.cc new file mode 100644 index 0000000..73a9977 --- /dev/null +++ b/chrome/browser/renderer_host/database_permission_request.cc @@ -0,0 +1,38 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/renderer_host/database_permission_request.h" + +#include "chrome/browser/chrome_thread.h" + +DatabasePermissionRequest::DatabasePermissionRequest( + const string16& origin, + const string16& database_name, + Task* on_allow, + Task* on_block) + : origin_(origin), + database_name_(database_name), + on_allow_(on_allow), + on_block_(on_block) { + DCHECK(on_allow_.get()); + DCHECK(on_block_.get()); +} + +DatabasePermissionRequest::~DatabasePermissionRequest() { +} + +void DatabasePermissionRequest::RequestPermission() { + DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); + ChromeThread::PostTask( + ChromeThread::UI, FROM_HERE, NewRunnableMethod( + this, &DatabasePermissionRequest::RequestPermissionUI)); +} + +void DatabasePermissionRequest::RequestPermissionUI() { + DCHECK(ChromeThread::CurrentlyOn(ChromeThread::UI)); + bool allow = false; // TODO(jorlow/darin): Allow user to choose. + + Task* task = allow ? on_allow_.release() : on_block_.release(); + ChromeThread::PostTask(ChromeThread::IO, FROM_HERE, task); +} |