Commit 22f5b2e3 authored by Elly Fong-Jones's avatar Elly Fong-Jones Committed by Commit Bot

polychrome: fix ExtensionMessageBubbleViewBrowserTest suite

This change:
1) Introduces Cocoa shims for GetViewsBubbleForBrowser and
   GetAnchorReferenceBoundsForBrowser;
2) Adds calls to those shims as needed from the Views code (when in
   polychrome-cocoa mode)

This fixes ExtensionMessageBubbleViewBrowserTest.* in all three of cocoa,
polychrome-cocoa, and polychrome-views.

Bug: 817408
Change-Id: I4b1ac44c23cd6979013b35534e028fe38c4f8353
Reviewed-on: https://chromium-review.googlesource.com/962873
Commit-Queue: Elly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: default avatarSarah Chan <spqchan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543353}
parent e1411c5f
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#import <Cocoa/Cocoa.h> #import <Cocoa/Cocoa.h>
#include "build/buildflag.h"
#include "chrome/browser/ui/browser_window.h" #include "chrome/browser/ui/browser_window.h"
#import "chrome/browser/ui/cocoa/browser_window_controller.h" #import "chrome/browser/ui/cocoa/browser_window_controller.h"
#import "chrome/browser/ui/cocoa/extensions/browser_action_button.h" #import "chrome/browser/ui/cocoa/extensions/browser_action_button.h"
...@@ -12,6 +13,7 @@ ...@@ -12,6 +13,7 @@
#import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h" #import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h"
#include "chrome/browser/ui/extensions/extension_message_bubble_browsertest.h" #include "chrome/browser/ui/extensions/extension_message_bubble_browsertest.h"
#include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h" #include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h"
#include "ui/base/ui_features.h"
#import "ui/gfx/mac/coordinate_conversion.h" #import "ui/gfx/mac/coordinate_conversion.h"
namespace { namespace {
...@@ -49,7 +51,8 @@ class ToolbarActionsBarBubbleViewsPresenterTestApi { ...@@ -49,7 +51,8 @@ class ToolbarActionsBarBubbleViewsPresenterTestApi {
// static // static
ToolbarActionsBarBubbleViews* ToolbarActionsBarBubbleViews*
ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) { ExtensionMessageBubbleBrowserTest::GetViewsBubbleForCocoaBrowser(
Browser* browser) {
ToolbarController* toolbarController = ToolbarControllerForBrowser(browser); ToolbarController* toolbarController = ToolbarControllerForBrowser(browser);
BrowserActionsController* actionsController = BrowserActionsController* actionsController =
[toolbarController browserActionsController]; [toolbarController browserActionsController];
...@@ -57,8 +60,17 @@ ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) { ...@@ -57,8 +60,17 @@ ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) {
[actionsController presenter]); [actionsController presenter]);
} }
#if !BUILDFLAG(MAC_VIEWS_BROWSER)
// static // static
gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser( ToolbarActionsBarBubbleViews*
ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) {
return GetViewsBubbleForCocoaBrowser(browser);
}
#endif
// static
gfx::Rect
ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForCocoaBrowser(
Browser* browser, Browser* browser,
AnchorPosition anchor) { AnchorPosition anchor) {
ToolbarController* toolbarController = ToolbarControllerForBrowser(browser); ToolbarController* toolbarController = ToolbarControllerForBrowser(browser);
...@@ -87,3 +99,12 @@ gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser( ...@@ -87,3 +99,12 @@ gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser(
return gfx::ScreenRectFromNSRect(reference_bounds_in_screen); return gfx::ScreenRectFromNSRect(reference_bounds_in_screen);
} }
#if !BUILDFLAG(MAC_VIEWS_BROWSER)
// static
gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser(
Browser* browser,
AnchorPosition anchor) {
return GetAnchorReferenceBoundsForCocoaBrowser(browser, anchor);
}
#endif
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <memory> #include <memory>
#include "base/macros.h" #include "base/macros.h"
#include "build/build_config.h"
#include "chrome/browser/ui/toolbar/browser_actions_bar_browsertest.h" #include "chrome/browser/ui/toolbar/browser_actions_bar_browsertest.h"
namespace extensions { namespace extensions {
...@@ -32,10 +33,20 @@ class ExtensionMessageBubbleBrowserTest ...@@ -32,10 +33,20 @@ class ExtensionMessageBubbleBrowserTest
static ToolbarActionsBarBubbleViews* GetViewsBubbleForBrowser( static ToolbarActionsBarBubbleViews* GetViewsBubbleForBrowser(
Browser* browser); Browser* browser);
#if defined(OS_MACOSX)
static ToolbarActionsBarBubbleViews* GetViewsBubbleForCocoaBrowser(
Browser* browser);
#endif
// Returns the expected test anchor bounds on |browser| which may be a Cocoa // Returns the expected test anchor bounds on |browser| which may be a Cocoa
// browser or a Views browser. Implemented in platform files. // browser or a Views browser. Implemented in platform files.
static gfx::Rect GetAnchorReferenceBoundsForBrowser(Browser* browser, static gfx::Rect GetAnchorReferenceBoundsForBrowser(Browser* browser,
AnchorPosition anchor); AnchorPosition anchor);
#if defined(OS_MACOSX)
static gfx::Rect GetAnchorReferenceBoundsForCocoaBrowser(
Browser* browser,
AnchorPosition anchor);
#endif
// BrowserActionsBarBrowserTest: // BrowserActionsBarBrowserTest:
void SetUpCommandLine(base::CommandLine* command_line) override; void SetUpCommandLine(base::CommandLine* command_line) override;
......
...@@ -2,12 +2,15 @@ ...@@ -2,12 +2,15 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "build/buildflag.h"
#include "chrome/browser/ui/extensions/extension_message_bubble_browsertest.h" #include "chrome/browser/ui/extensions/extension_message_bubble_browsertest.h"
#include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views/toolbar/app_menu_button.h" #include "chrome/browser/ui/views/toolbar/app_menu_button.h"
#include "chrome/browser/ui/views/toolbar/browser_actions_container.h" #include "chrome/browser/ui/views/toolbar/browser_actions_container.h"
#include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h" #include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h"
#include "chrome/browser/ui/views/toolbar/toolbar_view.h" #include "chrome/browser/ui/views/toolbar/toolbar_view.h"
#include "chrome/browser/ui/views_mode_controller.h"
#include "ui/base/ui_base_features.h"
#include "ui/views/bubble/bubble_dialog_delegate.h" #include "ui/views/bubble/bubble_dialog_delegate.h"
namespace { namespace {
...@@ -22,6 +25,10 @@ ToolbarView* GetToolbarViewForBrowser(Browser* browser) { ...@@ -22,6 +25,10 @@ ToolbarView* GetToolbarViewForBrowser(Browser* browser) {
// static // static
ToolbarActionsBarBubbleViews* ToolbarActionsBarBubbleViews*
ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) { ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa())
return GetViewsBubbleForCocoaBrowser(browser);
#endif
return static_cast<ToolbarActionsBarBubbleViews*>( return static_cast<ToolbarActionsBarBubbleViews*>(
GetToolbarViewForBrowser(browser)->browser_actions()->active_bubble()); GetToolbarViewForBrowser(browser)->browser_actions()->active_bubble());
} }
...@@ -30,6 +37,10 @@ ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) { ...@@ -30,6 +37,10 @@ ExtensionMessageBubbleBrowserTest::GetViewsBubbleForBrowser(Browser* browser) {
gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser( gfx::Rect ExtensionMessageBubbleBrowserTest::GetAnchorReferenceBoundsForBrowser(
Browser* browser, Browser* browser,
AnchorPosition anchor) { AnchorPosition anchor) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa())
return GetAnchorReferenceBoundsForCocoaBrowser(browser, anchor);
#endif
ToolbarView* toolbar_view = GetToolbarViewForBrowser(browser); ToolbarView* toolbar_view = GetToolbarViewForBrowser(browser);
BrowserActionsContainer* container = toolbar_view->browser_actions(); BrowserActionsContainer* container = toolbar_view->browser_actions();
views::View* anchor_view = nullptr; views::View* anchor_view = nullptr;
......
...@@ -1438,7 +1438,7 @@ test("browser_tests") { ...@@ -1438,7 +1438,7 @@ test("browser_tests") {
"../browser/ui/views/collected_cookies_views_browsertest.cc", "../browser/ui/views/collected_cookies_views_browsertest.cc",
"../browser/ui/views/extensions/bookmark_override_browsertest.cc", "../browser/ui/views/extensions/bookmark_override_browsertest.cc",
"../browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc", "../browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc",
"../browser/ui/views/extensions/extension_message_bubble_view_browsertest_nonmac.cc", "../browser/ui/views/extensions/extension_message_bubble_view_browsertest_views.cc",
"../browser/ui/views/extensions/extension_uninstall_dialog_view_browsertest.cc", "../browser/ui/views/extensions/extension_uninstall_dialog_view_browsertest.cc",
"../browser/ui/views/extensions/media_galleries_dialog_views_browsertest.cc", "../browser/ui/views/extensions/media_galleries_dialog_views_browsertest.cc",
"../browser/ui/views/frame/browser_non_client_frame_view_browsertest.cc", "../browser/ui/views/frame/browser_non_client_frame_view_browsertest.cc",
...@@ -1830,6 +1830,7 @@ test("browser_tests") { ...@@ -1830,6 +1830,7 @@ test("browser_tests") {
"../browser/ui/cocoa/applescript/tab_applescript_browsertest.mm", "../browser/ui/cocoa/applescript/tab_applescript_browsertest.mm",
"../browser/ui/cocoa/applescript/window_applescript_test.mm", "../browser/ui/cocoa/applescript/window_applescript_test.mm",
"../browser/ui/cocoa/certificate_viewer_mac_browsertest.mm", "../browser/ui/cocoa/certificate_viewer_mac_browsertest.mm",
"../browser/ui/cocoa/extensions/extension_message_bubble_views_browsertest_mac.mm",
"../browser/ui/cocoa/share_menu_controller_browsertest.mm", "../browser/ui/cocoa/share_menu_controller_browsertest.mm",
] ]
sources -= [ sources -= [
...@@ -1871,7 +1872,6 @@ test("browser_tests") { ...@@ -1871,7 +1872,6 @@ test("browser_tests") {
"../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.h", "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.h",
"../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.mm", "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.mm",
"../browser/ui/cocoa/extensions/extension_message_bubble_browsertest_mac.mm", "../browser/ui/cocoa/extensions/extension_message_bubble_browsertest_mac.mm",
"../browser/ui/cocoa/extensions/extension_message_bubble_views_browsertest_mac.mm",
"../browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_browsertest.mm", "../browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_browsertest.mm",
"../browser/ui/cocoa/extensions/windowed_install_dialog_controller_browsertest.mm", "../browser/ui/cocoa/extensions/windowed_install_dialog_controller_browsertest.mm",
"../browser/ui/cocoa/find_bar/find_bar_browsertest.mm", "../browser/ui/cocoa/find_bar/find_bar_browsertest.mm",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment