| Index: chrome/browser/ui/intents/web_intent_picker_model.cc
|
| diff --git a/chrome/browser/ui/intents/web_intent_picker_model.cc b/chrome/browser/ui/intents/web_intent_picker_model.cc
|
| index 826a94c78c8a1c105bacc299c315b51b93d135c3..3977b06589992b059791c6e182d44eca0faf9bae 100644
|
| --- a/chrome/browser/ui/intents/web_intent_picker_model.cc
|
| +++ b/chrome/browser/ui/intents/web_intent_picker_model.cc
|
| @@ -27,7 +27,8 @@ WebIntentPickerModel::WebIntentPickerModel()
|
| : observer_(NULL),
|
| waiting_for_suggestions_(true),
|
| default_service_hash_(0),
|
| - pending_extension_install_download_progress_(0) {
|
| + pending_extension_install_download_progress_(0),
|
| + pending_extension_install_prompt_(NULL) {
|
| }
|
|
|
| WebIntentPickerModel::~WebIntentPickerModel() {
|
| @@ -209,10 +210,27 @@ void WebIntentPickerModel::SetPendingExtensionInstallStatusString(
|
| observer_->OnModelChanged(this);
|
| }
|
|
|
| +void WebIntentPickerModel::SetPendingExtensionInstallDelegate(
|
| + ExtensionInstallPrompt::Delegate* delegate) {
|
| + pending_extension_install_delegate_ = delegate;
|
| + if (observer_)
|
| + observer_->OnModelChanged(this);
|
| +}
|
| +
|
| +void WebIntentPickerModel::SetPendingExtensionInstallPrompt(
|
| + const ExtensionInstallPrompt::Prompt& prompt) {
|
| + pending_extension_install_prompt_.reset(
|
| + new ExtensionInstallPrompt::Prompt(prompt));
|
| + if (observer_)
|
| + observer_->OnModelChanged(this);
|
| +}
|
| +
|
| void WebIntentPickerModel::ClearPendingExtensionInstall() {
|
| pending_extension_install_id_.clear();
|
| pending_extension_install_download_progress_ = 0;
|
| pending_extension_install_status_string_.clear();
|
| + pending_extension_install_delegate_ = NULL;
|
| + pending_extension_install_prompt_.reset();
|
| if (observer_)
|
| observer_->OnModelChanged(this);
|
| }
|
|
|