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

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

Issue 2403763003: [Mac] Address buggy permission bubble behaviour on dismissal via ESC. (Closed)
Patch Set: Override [cancel] instead of [dealloc] Created 4 years, 2 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/website_settings/permission_prompt_impl.cc
diff --git a/chrome/browser/ui/views/website_settings/permission_prompt_impl.cc b/chrome/browser/ui/views/website_settings/permission_prompt_impl.cc
index 7045b6cf219a066dae2f2932bfa0131c476846f2..6a422d2db63c5b9f761aa3aa8baa885e33be2ef7 100644
--- a/chrome/browser/ui/views/website_settings/permission_prompt_impl.cc
+++ b/chrome/browser/ui/views/website_settings/permission_prompt_impl.cc
@@ -394,10 +394,7 @@ void PermissionsBubbleDialogDelegateView::UpdateAnchor(
PermissionPromptImpl::PermissionPromptImpl(Browser* browser)
: browser_(browser),
delegate_(nullptr),
- bubble_delegate_(nullptr) {
- DCHECK(browser);
- DCHECK(browser->window());
-}
+ bubble_delegate_(nullptr) {}
hcarmona 2016/10/10 18:08:19 Same here.
dominickn 2016/10/10 22:55:48 See other comment
PermissionPromptImpl::~PermissionPromptImpl() {
}
@@ -408,6 +405,9 @@ void PermissionPromptImpl::SetDelegate(Delegate* delegate) {
void PermissionPromptImpl::Show(const std::vector<PermissionRequest*>& requests,
const std::vector<bool>& values) {
+ DCHECK(browser_);
+ DCHECK(browser_->window());
+
if (bubble_delegate_)
bubble_delegate_->CloseBubble();
@@ -442,6 +442,9 @@ bool PermissionPromptImpl::IsVisible() {
}
void PermissionPromptImpl::UpdateAnchorPosition() {
+ DCHECK(browser_);
+ DCHECK(browser_->window());
+
if (IsVisible()) {
bubble_delegate_->set_parent_window(
platform_util::GetViewForWindow(browser_->window()->GetNativeWindow()));

Powered by Google App Engine
This is Rietveld 408576698