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

Unified Diff: chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc

Issue 2829023002: Fix cancelling permission requests on Android when the PermissionRequestManager is enabled (Closed)
Patch Set: comment Created 3 years, 8 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/ui/views/permission_bubble/permission_prompt_impl.cc
diff --git a/chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc b/chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc
index 9ca35cec672045c1f32f5abc801c3245d4121afa..fbd33f6ce2b6f819a7955ab56ca1007efe7e9aff 100644
--- a/chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc
+++ b/chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc
@@ -407,8 +407,10 @@ void PermissionPromptImpl::Show(const std::vector<PermissionRequest*>& requests,
DCHECK(browser_);
DCHECK(browser_->window());
- if (bubble_delegate_)
- bubble_delegate_->CloseBubble();
+ if (IsVisible()) {
+ // We just rejected a MaybeCancelRequest() call.
+ return;
+ }
bubble_delegate_ =
new PermissionsBubbleDialogDelegateView(this, requests, values);
@@ -430,8 +432,11 @@ void PermissionPromptImpl::Show(const std::vector<PermissionRequest*>& requests,
GetAnchorArrow());
}
-bool PermissionPromptImpl::CanAcceptRequestUpdate() {
- return !(bubble_delegate_ && bubble_delegate_->IsMouseHovered());
+bool PermissionPromptImpl::MaybeCancelRequest() {
+ if (bubble_delegate_->IsMouseHovered())
+ return false;
+ Hide();
+ return true;
}
bool PermissionPromptImpl::HidesAutomatically() {

Powered by Google App Engine
This is Rietveld 408576698