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

Unified Diff: chrome/browser/ui/cocoa/global_error_bubble_controller_views.mm

Issue 2586373003: MacViews: Allow toolkit-views for "Global Error" bubbles. (Closed)
Patch Set: addObserverForName Created 3 years, 11 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/cocoa/global_error_bubble_controller_views.mm
diff --git a/chrome/browser/ui/cocoa/global_error_bubble_controller_views.mm b/chrome/browser/ui/cocoa/global_error_bubble_controller_views.mm
new file mode 100644
index 0000000000000000000000000000000000000000..caa47d7b33bd433816e80079d0000ddefcfd5175
--- /dev/null
+++ b/chrome/browser/ui/cocoa/global_error_bubble_controller_views.mm
@@ -0,0 +1,32 @@
+// Copyright 2016 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.
+
+#include "chrome/browser/platform_util.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/browser_window.h"
+#import "chrome/browser/ui/cocoa/global_error_bubble_controller.h"
+#include "chrome/browser/ui/views/global_error_bubble_view.h"
+#import "chrome/browser/ui/cocoa/bubble_anchor_helper_views.h"
+#import "ui/base/cocoa/cocoa_base_utils.h"
+#import "ui/gfx/mac/coordinate_conversion.h"
+
+GlobalErrorBubbleViewBase* ShowViewsGlobalErrorBubbleOnCocoaBrowser(
+ NSPoint anchor,
+ Browser* browser,
+ const base::WeakPtr<GlobalErrorWithStandardBubble>& error) {
+ gfx::Point anchor_point =
+ gfx::ScreenPointFromNSPoint(ui::ConvertPointFromWindowToScreen(
+ browser->window()->GetNativeWindow(), anchor));
+ gfx::NativeView parent =
+ platform_util::GetViewForWindow(browser->window()->GetNativeWindow());
+ DCHECK(parent);
+
+ GlobalErrorBubbleView* bubble_view = new GlobalErrorBubbleView(
+ nullptr, anchor_point, views::BubbleBorder::TOP_RIGHT, browser, error);
+ bubble_view->set_parent_window(parent);
+ views::BubbleDialogDelegateView::CreateBubble(bubble_view);
+ bubble_view->GetWidget()->Show();
+ KeepBubbleAnchored(bubble_view);
+ return bubble_view;
+}
« no previous file with comments | « chrome/browser/ui/cocoa/global_error_bubble_controller.mm ('k') | chrome/browser/ui/cocoa/toolbar/toolbar_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698