Commit 37c880ab authored by Bret Sepulveda's avatar Bret Sepulveda Committed by Commit Bot

Fix WebAppFrameToolbarInteractiveUITest when ExtensionsToolbarMenu is enabled.

The sole test in the suite cycles focus through elements on the toolbar.
Since we added an element to the toolbar (the extensions menu button),
it needed to be included in the cycle.

Bug: 984654
Change-Id: I0c6aa82fa1f09bee28422b5f9d97634ef7d37e0d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2027788Reviewed-by: default avatarElly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Commit-Queue: Bret Sepulveda <bsep@chromium.org>
Cr-Commit-Position: refs/heads/master@{#737333}
parent 49e19ab9
...@@ -51,6 +51,7 @@ enum ViewID { ...@@ -51,6 +51,7 @@ enum ViewID {
VIEW_ID_RELOAD_BUTTON, VIEW_ID_RELOAD_BUTTON,
VIEW_ID_HOME_BUTTON, VIEW_ID_HOME_BUTTON,
VIEW_ID_STAR_BUTTON, VIEW_ID_STAR_BUTTON,
VIEW_ID_EXTENSIONS_MENU_BUTTON,
VIEW_ID_APP_MENU, VIEW_ID_APP_MENU,
VIEW_ID_BROWSER_ACTION_TOOLBAR, VIEW_ID_BROWSER_ACTION_TOOLBAR,
VIEW_ID_BROWSER_ACTION, VIEW_ID_BROWSER_ACTION,
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include "chrome/browser/ui/extensions/settings_api_bubble_helpers.h" #include "chrome/browser/ui/extensions/settings_api_bubble_helpers.h"
#include "chrome/browser/ui/layout_constants.h" #include "chrome/browser/ui/layout_constants.h"
#include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h" #include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h"
#include "chrome/browser/ui/view_ids.h"
#include "chrome/browser/ui/views/extensions/browser_action_drag_data.h" #include "chrome/browser/ui/views/extensions/browser_action_drag_data.h"
#include "chrome/browser/ui/views/extensions/extensions_menu_view.h" #include "chrome/browser/ui/views/extensions/extensions_menu_view.h"
#include "chrome/browser/ui/views/extensions/extensions_toolbar_button.h" #include "chrome/browser/ui/views/extensions/extensions_toolbar_button.h"
...@@ -46,6 +47,7 @@ ExtensionsToolbarContainer::ExtensionsToolbarContainer(Browser* browser) ...@@ -46,6 +47,7 @@ ExtensionsToolbarContainer::ExtensionsToolbarContainer(Browser* browser)
extensions_button_->EnableCanvasFlippingForRTLUI(false); extensions_button_->EnableCanvasFlippingForRTLUI(false);
extensions_button_->SetProperty(views::kFlexBehaviorKey, extensions_button_->SetProperty(views::kFlexBehaviorKey,
views::FlexSpecification()); views::FlexSpecification());
extensions_button_->SetID(VIEW_ID_EXTENSIONS_MENU_BUTTON);
AddMainButton(extensions_button_); AddMainButton(extensions_button_);
target_layout_manager() target_layout_manager()
->SetFlexAllocationOrder(views::FlexAllocationOrder::kReverse) ->SetFlexAllocationOrder(views::FlexAllocationOrder::kReverse)
......
...@@ -4,10 +4,12 @@ ...@@ -4,10 +4,12 @@
#include "chrome/browser/ui/views/web_apps/web_app_frame_toolbar_test.h" #include "chrome/browser/ui/views/web_apps/web_app_frame_toolbar_test.h"
#include "base/feature_list.h"
#include "chrome/app/chrome_command_ids.h" #include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_command_controller.h" #include "chrome/browser/ui/browser_command_controller.h"
#include "chrome/browser/ui/browser_commands.h" #include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/ui_features.h"
#include "chrome/browser/ui/view_ids.h" #include "chrome/browser/ui/view_ids.h"
#include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/test/base/interactive_test_utils.h" #include "chrome/test/base/interactive_test_utils.h"
...@@ -18,7 +20,8 @@ ...@@ -18,7 +20,8 @@
using WebAppFrameToolbarInteractiveUITest = WebAppFrameToolbarTest; using WebAppFrameToolbarInteractiveUITest = WebAppFrameToolbarTest;
// Verifies that for minimal-ui web apps, the toolbar keyboard focus cycles // Verifies that for minimal-ui web apps, the toolbar keyboard focus cycles
// between the Reload and app menu buttons. // among the toolbar buttons: the reload button, the extensions menu button, and
// the app menu button, in that order.
IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) { IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) {
const GURL app_url("https://test.org"); const GURL app_url("https://test.org");
InstallAndLaunchWebApp(app_url); InstallAndLaunchWebApp(app_url);
...@@ -36,9 +39,13 @@ IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) { ...@@ -36,9 +39,13 @@ IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) {
views::FocusManager* const focus_manager = browser_view()->GetFocusManager(); views::FocusManager* const focus_manager = browser_view()->GetFocusManager();
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_RELOAD_BUTTON); EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_RELOAD_BUTTON);
// Press Tab to cycle through all of the controls in the toolbar until // Press Tab to cycle through controls until we end up back where we started.
// we end up back where we started.
// This approach is similar to ToolbarViewTest::RunToolbarCycleFocusTest(). // This approach is similar to ToolbarViewTest::RunToolbarCycleFocusTest().
if (base::FeatureList::IsEnabled(features::kExtensionsToolbarMenu)) {
focus_manager->AdvanceFocus(false);
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(),
VIEW_ID_EXTENSIONS_MENU_BUTTON);
}
focus_manager->AdvanceFocus(false); focus_manager->AdvanceFocus(false);
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_APP_MENU); EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_APP_MENU);
focus_manager->AdvanceFocus(false); focus_manager->AdvanceFocus(false);
...@@ -47,6 +54,11 @@ IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) { ...@@ -47,6 +54,11 @@ IN_PROC_BROWSER_TEST_F(WebAppFrameToolbarInteractiveUITest, CycleFocus) {
// Now press Shift-Tab to cycle backwards. // Now press Shift-Tab to cycle backwards.
focus_manager->AdvanceFocus(true); focus_manager->AdvanceFocus(true);
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_APP_MENU); EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_APP_MENU);
if (base::FeatureList::IsEnabled(features::kExtensionsToolbarMenu)) {
focus_manager->AdvanceFocus(true);
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(),
VIEW_ID_EXTENSIONS_MENU_BUTTON);
}
focus_manager->AdvanceFocus(true); focus_manager->AdvanceFocus(true);
EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_RELOAD_BUTTON); EXPECT_EQ(focus_manager->GetFocusedView()->GetID(), VIEW_ID_RELOAD_BUTTON);
} }
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