diff options
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/dom_ui/options/password_manager_handler.cc | 20 | ||||
-rw-r--r-- | chrome/browser/dom_ui/options/password_manager_handler.h | 16 |
2 files changed, 24 insertions, 12 deletions
diff --git a/chrome/browser/dom_ui/options/password_manager_handler.cc b/chrome/browser/dom_ui/options/password_manager_handler.cc index b6769e6b..0c9eaa5 100644 --- a/chrome/browser/dom_ui/options/password_manager_handler.cc +++ b/chrome/browser/dom_ui/options/password_manager_handler.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 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. @@ -153,6 +153,19 @@ void PasswordManagerHandler::SetPasswordExceptionList() { L"PasswordManager.setPasswordExceptionsList", entries); } +PasswordManagerHandler::ListPopulater::ListPopulater( + PasswordManagerHandler* page) : page_(page), + pending_login_query_(0) { +} + +PasswordManagerHandler::ListPopulater::~ListPopulater() { + page_->GetPasswordStore()->CancelLoginsQuery(pending_login_query_); +} + +PasswordManagerHandler::PasswordListPopulater::PasswordListPopulater( + PasswordManagerHandler* page) : ListPopulater(page) { +} + void PasswordManagerHandler::PasswordListPopulater::Populate() { DCHECK(!pending_login_query_); PasswordStore* store = page_->GetPasswordStore(); @@ -171,6 +184,11 @@ void PasswordManagerHandler::PasswordListPopulater:: page_->SetPasswordList(); } +PasswordManagerHandler::PasswordExceptionListPopulater:: + PasswordExceptionListPopulater(PasswordManagerHandler* page) + : ListPopulater(page) { +} + void PasswordManagerHandler::PasswordExceptionListPopulater::Populate() { DCHECK(!pending_login_query_); PasswordStore* store = page_->GetPasswordStore(); diff --git a/chrome/browser/dom_ui/options/password_manager_handler.h b/chrome/browser/dom_ui/options/password_manager_handler.h index 5cd3080..af94e6b 100644 --- a/chrome/browser/dom_ui/options/password_manager_handler.h +++ b/chrome/browser/dom_ui/options/password_manager_handler.h @@ -1,4 +1,4 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 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. @@ -56,10 +56,8 @@ class PasswordManagerHandler : public OptionsPageUIHandler { // A short class to mediate requests to the password store. class ListPopulater : public PasswordStoreConsumer { public: - explicit ListPopulater(PasswordManagerHandler* page) - : page_(page), - pending_login_query_(0) { - } + explicit ListPopulater(PasswordManagerHandler* page); + virtual ~ListPopulater(); // Send a query to the password store to populate a list. virtual void Populate() = 0; @@ -76,9 +74,7 @@ class PasswordManagerHandler : public OptionsPageUIHandler { // A short class to mediate requests to the password store for passwordlist. class PasswordListPopulater : public ListPopulater { public: - explicit PasswordListPopulater(PasswordManagerHandler* page) - : ListPopulater(page) { - } + explicit PasswordListPopulater(PasswordManagerHandler* page); // Send a query to the password store to populate a password list. virtual void Populate(); @@ -91,9 +87,7 @@ class PasswordManagerHandler : public OptionsPageUIHandler { // A short class to mediate requests to the password store for exceptions. class PasswordExceptionListPopulater : public ListPopulater { public: - explicit PasswordExceptionListPopulater( - PasswordManagerHandler* page) : ListPopulater(page) { - } + explicit PasswordExceptionListPopulater(PasswordManagerHandler* page); // Send a query to the password store to populate a passwordException list. virtual void Populate(); |