Commit 1574deae authored by Nico Weber's avatar Nico Weber

mac: Remove interactive_test_utils_cocoa and two uses of IsViewsBrowserCocoa.

Bug: 832676
Change-Id: If5abb30902fdde9ec391c3a6fc8ed5808cf36476
Reviewed-on: https://chromium-review.googlesource.com/1253089Reviewed-by: default avatarRobert Liao <robliao@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595476}
parent 0c8daef0
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
#include "chrome/browser/ui/views/location_bar/location_bar_view.h" #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
#include "chrome/browser/ui/views/location_bar/location_icon_view.h" #include "chrome/browser/ui/views/location_bar/location_icon_view.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 "chrome/common/chrome_features.h" #include "chrome/common/chrome_features.h"
#include "chrome/common/url_constants.h" #include "chrome/common/url_constants.h"
#include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/in_process_browser_test.h"
...@@ -53,15 +52,6 @@ void PerformMouseClickOnView(views::View* view) { ...@@ -53,15 +52,6 @@ void PerformMouseClickOnView(views::View* view) {
// Clicks the location icon to open the page info bubble. // Clicks the location icon to open the page info bubble.
void OpenPageInfoBubble(Browser* browser) { void OpenPageInfoBubble(Browser* browser) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa()) {
content::WebContents* contents =
browser->tab_strip_model()->GetActiveWebContents();
ShowPageInfoDialog(contents);
return;
}
#endif
BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser); BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser);
LocationIconView* location_icon_view = LocationIconView* location_icon_view =
browser_view->toolbar()->location_bar()->location_icon_view(); browser_view->toolbar()->location_bar()->location_icon_view();
......
...@@ -5036,11 +5036,7 @@ if (!is_android) { ...@@ -5036,11 +5036,7 @@ if (!is_android) {
} }
if (is_mac) { if (is_mac) {
sources += [ sources += [ "../browser/ui/find_bar/find_bar_platform_helper_mac_interactive_uitest.mm" ]
"../browser/ui/find_bar/find_bar_platform_helper_mac_interactive_uitest.mm",
"base/interactive_test_utils_cocoa.h",
"base/interactive_test_utils_cocoa.mm",
]
data_deps += [ data_deps += [
"//chrome", "//chrome",
......
// Copyright 2018 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.
#ifndef CHROME_TEST_BASE_INTERACTIVE_TEST_UTILS_COCOA_H_
#define CHROME_TEST_BASE_INTERACTIVE_TEST_UTILS_COCOA_H_
#include "chrome/browser/ui/view_ids.h"
class Browser;
namespace ui_test_utils {
namespace internal {
// Returns true of |vid| in |browser| is focused.
bool IsViewFocusedCocoa(const Browser* browser, ViewID vid);
// Simulates a mouse click on |vid| in |browser|.
void ClickOnViewCocoa(const Browser* browser, ViewID vid);
// Moves focus to |vid| in |browser|
void FocusViewCocoa(const Browser* browser, ViewID vid);
} // namespace internal
} // namespace ui_test_utils
#endif // CHROME_TEST_BASE_INTERACTIVE_TEST_UTILS_COCOA_H_
// 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/test/base/interactive_test_utils_cocoa.h"
#import <Cocoa/Cocoa.h>
#include "base/bind.h"
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
#include "build/buildflag.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_window.h"
#import "chrome/browser/ui/cocoa/view_id_util.h"
#include "chrome/test/base/interactive_test_utils.h"
#include "ui/base/cocoa/cocoa_base_utils.h"
#include "ui/base/ui_features.h"
namespace ui_test_utils {
namespace internal {
namespace {
void MoveMouseToNSViewCenterAndPress(NSView* view,
ui_controls::MouseButton button,
int button_state,
const base::RepeatingClosure& task) {
NSWindow* window = [view window];
NSScreen* screen = [window screen];
DCHECK(screen);
// Converts the center position of the view into the coordinates accepted
// by SendMouseMoveNotifyWhenDone() method.
NSRect bounds = [view bounds];
NSPoint center = NSMakePoint(NSMidX(bounds), NSMidY(bounds));
center = [view convertPoint:center toView:nil];
center = ui::ConvertPointFromWindowToScreen(window, center);
center = NSMakePoint(center.x, [screen frame].size.height - center.y);
ui_controls::SendMouseMoveNotifyWhenDone(
center.x, center.y,
base::BindOnce(&internal::ClickTask, button, button_state, task,
ui_controls::kNoAccelerator));
}
} // namespace
bool IsViewFocusedCocoa(const Browser* browser, ViewID vid) {
NSWindow* window = browser->window()->GetNativeWindow();
DCHECK(window);
NSView* view = view_id_util::GetView(window, vid);
if (!view)
return false;
NSResponder* firstResponder = [window firstResponder];
if (firstResponder == static_cast<NSResponder*>(view))
return true;
// Handle special case for VIEW_ID_TAB_CONTAINER. The tab container NSView
// always transfers first responder status to its subview, so test whether
// |firstResponder| is a descendant.
if (vid == VIEW_ID_TAB_CONTAINER &&
[firstResponder isKindOfClass:[NSView class]])
return [static_cast<NSView*>(firstResponder) isDescendantOf:view];
// Handle the special case of focusing a TextField.
if ([firstResponder isKindOfClass:[NSTextView class]]) {
NSView* delegate = static_cast<NSView*>([(NSTextView*)firstResponder
delegate]);
if (delegate == view)
return true;
}
return false;
}
void ClickOnViewCocoa(const Browser* browser, ViewID vid) {
NSWindow* window = browser->window()->GetNativeWindow();
DCHECK(window);
NSView* view = view_id_util::GetView(window, vid);
DCHECK(view);
MoveMouseToNSViewCenterAndPress(
view, ui_controls::LEFT, ui_controls::DOWN | ui_controls::UP,
base::RunLoop::QuitCurrentWhenIdleClosureDeprecated());
content::RunMessageLoop();
}
void FocusViewCocoa(const Browser* browser, ViewID vid) {
NSWindow* window = browser->window()->GetNativeWindow();
DCHECK(window);
NSView* view = view_id_util::GetView(window, vid);
DCHECK(view);
[window makeFirstResponder:view];
}
} // namespace internal
#if !BUILDFLAG(MAC_VIEWS_BROWSER)
bool IsViewFocused(const Browser* browser, ViewID vid) {
return internal::IsViewFocusedCocoa(browser, vid);
}
void ClickOnView(const Browser* browser, ViewID vid) {
internal::ClickOnViewCocoa(browser, vid);
}
void FocusView(const Browser* browser, ViewID vid) {
internal::FocusViewCocoa(browser, vid);
}
#endif // !BUILDFLAG(MAC_VIEWS_BROWSER)
} // namespace ui_test_utils
...@@ -9,22 +9,12 @@ ...@@ -9,22 +9,12 @@
#include "build/buildflag.h" #include "build/buildflag.h"
#include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views_mode_controller.h"
#include "ui/base/ui_features.h" #include "ui/base/ui_features.h"
#include "ui/views/focus/focus_manager.h" #include "ui/views/focus/focus_manager.h"
#if BUILDFLAG(MAC_VIEWS_BROWSER)
#include "chrome/test/base/interactive_test_utils_cocoa.h"
#endif
namespace ui_test_utils { namespace ui_test_utils {
bool IsViewFocused(const Browser* browser, ViewID vid) { bool IsViewFocused(const Browser* browser, ViewID vid) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa())
return internal::IsViewFocusedCocoa(browser, vid);
#endif
BrowserWindow* browser_window = browser->window(); BrowserWindow* browser_window = browser->window();
DCHECK(browser_window); DCHECK(browser_window);
gfx::NativeWindow window = browser_window->GetNativeWindow(); gfx::NativeWindow window = browser_window->GetNativeWindow();
...@@ -38,11 +28,6 @@ bool IsViewFocused(const Browser* browser, ViewID vid) { ...@@ -38,11 +28,6 @@ bool IsViewFocused(const Browser* browser, ViewID vid) {
} }
void ClickOnView(const Browser* browser, ViewID vid) { void ClickOnView(const Browser* browser, ViewID vid) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa())
return internal::ClickOnViewCocoa(browser, vid);
#endif
views::View* view = views::View* view =
BrowserView::GetBrowserViewForBrowser(browser)->GetViewByID(vid); BrowserView::GetBrowserViewForBrowser(browser)->GetViewByID(vid);
DCHECK(view); DCHECK(view);
...@@ -53,11 +38,6 @@ void ClickOnView(const Browser* browser, ViewID vid) { ...@@ -53,11 +38,6 @@ void ClickOnView(const Browser* browser, ViewID vid) {
} }
void FocusView(const Browser* browser, ViewID vid) { void FocusView(const Browser* browser, ViewID vid) {
#if BUILDFLAG(MAC_VIEWS_BROWSER)
if (views_mode_controller::IsViewsBrowserCocoa())
return internal::FocusViewCocoa(browser, vid);
#endif
views::View* view = views::View* view =
BrowserView::GetBrowserViewForBrowser(browser)->GetViewByID(vid); BrowserView::GetBrowserViewForBrowser(browser)->GetViewByID(vid);
DCHECK(view); DCHECK(view);
......
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