Chromium Code Reviews| Index: chrome/browser/permissions/permission_prompt_android.cc |
| diff --git a/chrome/browser/permissions/permission_prompt_android.cc b/chrome/browser/permissions/permission_prompt_android.cc |
| index 74ad79baec116074b9699c697c84038dabb8b4e4..44a4677d58d86334782fae6ce7d9b700676c91e2 100644 |
| --- a/chrome/browser/permissions/permission_prompt_android.cc |
| +++ b/chrome/browser/permissions/permission_prompt_android.cc |
| @@ -15,16 +15,11 @@ |
| PermissionPromptAndroid::PermissionPromptAndroid( |
| content::WebContents* web_contents) |
| - : web_contents_(web_contents), delegate_(nullptr), infobar_(nullptr) { |
| + : web_contents_(web_contents), delegate_(nullptr) { |
| DCHECK(web_contents); |
| } |
| PermissionPromptAndroid::~PermissionPromptAndroid() { |
| - if (infobar_) { |
| - GroupedPermissionInfoBarDelegate* infobar_delegate = |
| - static_cast<GroupedPermissionInfoBarDelegate*>(infobar_->delegate()); |
| - infobar_delegate->PermissionPromptDestroyed(); |
|
dominickn
2017/03/16 03:58:23
Since this is the only method that calls Permissio
Timothy Loh
2017/03/17 00:52:47
Done.
|
| - } |
| } |
| void PermissionPromptAndroid::SetDelegate(Delegate* delegate) { |
| @@ -40,8 +35,8 @@ void PermissionPromptAndroid::Show( |
| return; |
| requests_ = requests; |
| - infobar_ = GroupedPermissionInfoBarDelegate::Create(this, infobar_service, |
| - requests[0]->GetOrigin()); |
| + GroupedPermissionInfoBarDelegate::Create(this, infobar_service, |
| + requests[0]->GetOrigin()); |
| } |
| bool PermissionPromptAndroid::CanAcceptRequestUpdate() { |
| @@ -49,16 +44,16 @@ bool PermissionPromptAndroid::CanAcceptRequestUpdate() { |
| } |
| void PermissionPromptAndroid::Hide() { |
| - InfoBarService* infobar_service = |
| - InfoBarService::FromWebContents(web_contents_); |
| - if (infobar_ && infobar_service) { |
| - infobar_service->RemoveInfoBar(infobar_); |
| - } |
| - infobar_ = nullptr; |
| + // No-op. Hide() is called in three cases: |
| + // - After the user resolves a prompt. The infobar manager will hide the |
| + // prompt for us. |
| + // - DidFinishNavigation, etc. The infobar manager handles this. |
| + // - PermissionManager::CancelRequest(). As CanAcceptRequestUpdate() returns |
| + // false, it doesn't call into here and instead dummies out the callbacks. |
| } |
| bool PermissionPromptAndroid::IsVisible() { |
| - return infobar_ != nullptr; |
| + return !requests_.empty(); |
| } |
| void PermissionPromptAndroid::UpdateAnchorPosition() { |