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

Unified Diff: chrome/browser/ui/cocoa/global_error_bubble_controller.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.mm
diff --git a/chrome/browser/ui/cocoa/global_error_bubble_controller.mm b/chrome/browser/ui/cocoa/global_error_bubble_controller.mm
index 0b54a6bfa6421dc4c3ebf1736115bee6031f2d21..73f4d2c36e947cd80dbc53a85428b11b73eede42 100644
--- a/chrome/browser/ui/cocoa/global_error_bubble_controller.mm
+++ b/chrome/browser/ui/cocoa/global_error_bubble_controller.mm
@@ -24,10 +24,20 @@
#import "third_party/google_toolbox_for_mac/src/AppKit/GTMUILocalizerAndLayoutTweaker.h"
#import "ui/base/cocoa/a11y_util.h"
#include "ui/base/l10n/l10n_util.h"
+#include "ui/base/material_design/material_design_controller.h"
#include "ui/gfx/image/image.h"
namespace {
+
const CGFloat kParagraphSpacing = 6;
+
+ToolbarController* ToolbarControllerForBrowser(Browser* browser) {
+ NSWindow* parent_window = browser->window()->GetNativeWindow();
+ BrowserWindowController* bwc =
+ [BrowserWindowController browserWindowControllerForWindow:parent_window];
+ return [bwc toolbarController];
+}
+
} // namespace
namespace GlobalErrorBubbleControllerInternal {
@@ -50,10 +60,7 @@ class Bridge : public GlobalErrorBubbleViewBase {
+ (GlobalErrorBubbleViewBase*)showForBrowser:(Browser*)browser
error:(const base::WeakPtr<GlobalErrorWithStandardBubble>&)error {
- NSWindow* parentWindow = browser->window()->GetNativeWindow();
- BrowserWindowController* bwc = [BrowserWindowController
- browserWindowControllerForWindow:parentWindow];
- NSView* appMenuButton = [[bwc toolbarController] appMenuButton];
+ NSView* appMenuButton = [ToolbarControllerForBrowser(browser) appMenuButton];
NSPoint offset = NSMakePoint(
NSMidX([appMenuButton bounds]),
app_menu_controller::kAppMenuBubblePointOffsetY);
@@ -164,5 +171,9 @@ class Bridge : public GlobalErrorBubbleViewBase {
GlobalErrorBubbleViewBase* GlobalErrorBubbleViewBase::ShowStandardBubbleView(
Browser* browser,
const base::WeakPtr<GlobalErrorWithStandardBubble>& error) {
- return [GlobalErrorBubbleController showForBrowser:browser error:error];
+ if (!ui::MaterialDesignController::IsSecondaryUiMaterial())
+ return [GlobalErrorBubbleController showForBrowser:browser error:error];
+
+ NSPoint ns_point = [ToolbarControllerForBrowser(browser) appMenuBubblePoint];
+ return ShowViewsGlobalErrorBubbleOnCocoaBrowser(ns_point, browser, error);
}

Powered by Google App Engine
This is Rietveld 408576698