Commit 675e275e authored by Melissa Zhang's avatar Melissa Zhang Committed by Commit Bot

Revert "Reland "[Switch Access] Move code out from behind flag""

This reverts commit 1ad72569.

Reason for revert: Breaking  https://ci.chromium.org/p/chrome/builders/ci/linux-chromeos-chrome/8059

Original change's description:
> Reland "[Switch Access] Move code out from behind flag"
> 
> This is a reland of 76c5ef2b
> 
> Original change's description:
> > [Switch Access] Move code out from behind flag
> > 
> > AX-Relnotes: Launch Switch Access on Chrome OS.
> > Bug: 1016200,1121357
> > Change-Id: I464abbeaeb50c8c40adbac4ce51d7d9f038430fa
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2373368
> > Commit-Queue: Anastasia Helfinstein <anastasi@google.com>
> > Reviewed-by: James Cook <jamescook@chromium.org>
> > Reviewed-by: David Tseng <dtseng@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#801947}
> 
> Bug: 1016200
> Bug: 1121357
> Change-Id: Ic1b96aa268768a30ea8b5ace11c0925f62494a63
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2380415
> Commit-Queue: Anastasia Helfinstein <anastasi@google.com>
> Reviewed-by: David Tseng <dtseng@chromium.org>
> Reviewed-by: James Cook <jamescook@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#802435}

TBR=jamescook@chromium.org,dtseng@chromium.org,anastasi@google.com

Change-Id: Ife8bb8b165fcb52a644fb917322eaccec1029f1d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1016200
Bug: 1121357
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2379437Reviewed-by: default avatarMelissa Zhang <melzhang@chromium.org>
Commit-Queue: Melissa Zhang <melzhang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#802466}
parent 99fc2c44
......@@ -42,6 +42,7 @@
#include "ash/wm/tablet_mode/tablet_mode_controller.h"
#include "base/bind.h"
#include "base/bind_helpers.h"
#include "base/command_line.h"
#include "base/metrics/histogram_functions.h"
#include "base/metrics/user_metrics.h"
#include "base/strings/string16.h"
......@@ -927,7 +928,9 @@ bool AccessibilityControllerImpl::IsPrimarySettingsViewVisibleInTray() {
IsDockedMagnifierSettingVisibleInTray() ||
IsAutoclickSettingVisibleInTray() ||
IsVirtualKeyboardSettingVisibleInTray() ||
IsSwitchAccessSettingVisibleInTray());
(base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableExperimentalAccessibilitySwitchAccess) &&
IsSwitchAccessSettingVisibleInTray()));
}
bool AccessibilityControllerImpl::IsAdditionalSettingsViewVisibleInTray() {
......@@ -1766,8 +1769,12 @@ void AccessibilityControllerImpl::MaybeCreateSelectToSpeakEventHandler() {
void AccessibilityControllerImpl::UpdateSwitchAccessKeyCodesFromPref(
SwitchAccessCommand command) {
if (!active_user_prefs_)
if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableExperimentalAccessibilitySwitchAccess)) {
return;
}
DCHECK(active_user_prefs_);
SyncSwitchAccessPrefsToSignInProfile();
......
......@@ -11,7 +11,9 @@
#include "ash/public/cpp/accessibility_event_rewriter_delegate.h"
#include "ash/shell.h"
#include "ash/test/ash_test_base.h"
#include "base/command_line.h"
#include "base/macros.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/aura/env.h"
#include "ui/aura/window.h"
#include "ui/aura/window_tree_host.h"
......@@ -444,6 +446,8 @@ class SwitchAccessAccessibilityEventRewriterTest : public AshTestBase {
accessibility_event_rewriter_.get());
controller_ = Shell::Get()->accessibility_controller();
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kEnableExperimentalAccessibilitySwitchAccess);
controller_->SetAccessibilityEventRewriter(
accessibility_event_rewriter_.get());
controller_->SetSwitchAccessEnabled(true);
......
......@@ -10,6 +10,8 @@
#include "ash/system/accessibility/switch_access_back_button_view.h"
#include "ash/system/accessibility/switch_access_menu_bubble_controller.h"
#include "ash/test/ash_test_base.h"
#include "base/command_line.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/display/display.h"
#include "ui/display/screen.h"
......@@ -27,6 +29,8 @@ class SwitchAccessBackButtonBubbleControllerTest : public AshTestBase {
// AshTestBase:
void SetUp() override {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
AshTestBase::SetUp();
Shell::Get()->accessibility_controller()->SetSwitchAccessEnabled(true);
}
......
......@@ -12,6 +12,8 @@
#include "ash/system/accessibility/switch_access_menu_view.h"
#include "ash/system/unified/unified_system_tray.h"
#include "ash/test/ash_test_base.h"
#include "base/command_line.h"
#include "ui/accessibility/accessibility_switches.h"
namespace ash {
......@@ -27,6 +29,8 @@ class SwitchAccessMenuBubbleControllerTest : public AshTestBase {
// AshTestBase:
void SetUp() override {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
AshTestBase::SetUp();
Shell::Get()->accessibility_controller()->SetSwitchAccessEnabled(true);
}
......
......@@ -23,7 +23,9 @@
#include "ash/system/tray/tray_popup_utils.h"
#include "ash/system/tray/tray_utils.h"
#include "ash/system/tray/tri_view.h"
#include "base/command_line.h"
#include "base/metrics/user_metrics.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/gfx/image/image.h"
#include "ui/views/controls/separator.h"
......@@ -274,7 +276,9 @@ void AccessibilityDetailedView::AppendAccessibilityList() {
ash::VIEW_ID_ACCESSIBILITY_VIRTUAL_KEYBOARD_ENABLED);
}
if (controller->IsSwitchAccessSettingVisibleInTray()) {
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableExperimentalAccessibilitySwitchAccess) &&
controller->IsSwitchAccessSettingVisibleInTray()) {
switch_access_enabled_ = controller->switch_access_enabled();
switch_access_view_ = AddScrollListCheckableItem(
kSwitchAccessIcon,
......
......@@ -15,8 +15,10 @@
#include "ash/system/tray/detailed_view_delegate.h"
#include "ash/system/tray/hover_highlight_view.h"
#include "ash/test/ash_test_base.h"
#include "base/command_line.h"
#include "base/macros.h"
#include "components/prefs/pref_service.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/accessibility/ax_enums.mojom-shared.h"
#include "ui/accessibility/ax_node_data.h"
......@@ -99,6 +101,8 @@ class TrayAccessibilityTest : public AshTestBase, public AccessibilityObserver {
void SetUp() override {
AshTestBase::SetUp();
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kEnableExperimentalAccessibilitySwitchAccess);
Shell::Get()->accessibility_controller()->AddObserver(this);
}
......
......@@ -3440,6 +3440,12 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kVirtualKeyboardFloatingResizableName,
flag_descriptions::kVirtualKeyboardFloatingResizableDescription, kOsCrOS,
FEATURE_VALUE_TYPE(chromeos::features::kVirtualKeyboardFloatingResizable)},
{"enable-experimental-accessibility-switch-access",
flag_descriptions::kExperimentalAccessibilitySwitchAccessName,
flag_descriptions::kExperimentalAccessibilitySwitchAccessDescription,
kOsCrOS,
SINGLE_VALUE_TYPE(
::switches::kEnableExperimentalAccessibilitySwitchAccess)},
{"enable-experimental-accessibility-switch-access-text",
flag_descriptions::kExperimentalAccessibilitySwitchAccessTextName,
flag_descriptions::kExperimentalAccessibilitySwitchAccessTextDescription,
......
......@@ -3,6 +3,7 @@
// found in the LICENSE file.
#include "ash/public/cpp/accessibility_controller.h"
#include "base/command_line.h"
#include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/test/base/in_process_browser_test.h"
......@@ -11,6 +12,7 @@
#include "chromeos/constants/chromeos_switches.h"
#include "content/public/test/browser_test.h"
#include "content/public/test/browser_test_utils.h"
#include "ui/accessibility/accessibility_switches.h"
namespace chromeos {
......@@ -22,6 +24,9 @@ class SwitchAccessTest : public InProcessBrowserTest {
}
void EnableSwitchAccess(const std::vector<int>& key_codes) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
AccessibilityManager* manager = AccessibilityManager::Get();
manager->SetSwitchAccessEnabled(true);
manager->SetSwitchAccessKeysForTest(key_codes);
......
......@@ -6,6 +6,7 @@
#include "ash/public/cpp/ash_view_ids.h"
#include "ash/public/cpp/system_tray_test_api.h"
#include "base/callback.h"
#include "base/command_line.h"
#include "base/run_loop.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chrome_notification_types.h"
......@@ -32,6 +33,7 @@
#include "content/public/test/browser_test.h"
#include "content/public/test/test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/compositor/scoped_animation_duration_scale_mode.h"
#include "ui/views/controls/button/button.h"
#include "ui/views/controls/label.h"
......@@ -152,6 +154,8 @@ class TrayAccessibilityTest
void SetUpOnMainThread() override {
InProcessBrowserTest::SetUpOnMainThread();
tray_test_api_ = ash::SystemTrayTestApi::Create();
base::CommandLine::ForCurrentProcess()->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
}
void SetUpInProcessBrowserTestFixture() override {
......
......@@ -18,6 +18,7 @@ SwitchAccessE2ETest = class extends E2ETestBase {
#include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
#include "chrome/common/extensions/extension_constants.h"
#include "content/public/test/browser_test.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ash/keyboard/ui/keyboard_util.h"
`);
}
......@@ -29,6 +30,8 @@ SwitchAccessE2ETest = class extends E2ETestBase {
base::Bind(&chromeos::AccessibilityManager::SetSwitchAccessEnabled,
base::Unretained(chromeos::AccessibilityManager::Get()),
true);
base::CommandLine::ForCurrentProcess()->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
chromeos::AccessibilityManager::Get()->SetSwitchAccessEnabled(true);
WaitForExtension(extension_misc::kSwitchAccessExtensionId, load_cb);
`);
......
......@@ -303,8 +303,8 @@ bool IsCursorColorAllowed() {
}
bool IsSwitchAccessAllowed() {
// TODO(anastasi): Remove this method.
return true;
return base::CommandLine::ForCurrentProcess()->HasSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
}
bool IsSwitchAccessTextAllowed() {
......
......@@ -1703,6 +1703,11 @@ var OSSettingsSwitchAccessSubpageTest = class extends OSSettingsBrowserTest {
'chromeos/os_a11y_page/switch_access_subpage.html';
}
/** @override */
get commandLineSwitches() {
return ['enable-experimental-accessibility-switch-access'];
}
/** @override */
get extraLibraries() {
return super.extraLibraries.concat([
......
......@@ -9,6 +9,7 @@
#include <utility>
#include "ash/public/cpp/assistant/controller/assistant_notification_controller.h"
#include "base/command_line.h"
#include "base/logging.h"
#include "base/memory/weak_ptr.h"
#include "chromeos/assistant/internal/internal_util.h"
......@@ -18,6 +19,7 @@
#include "chromeos/services/assistant/public/cpp/device_actions.h"
#include "chromeos/services/assistant/service_context.h"
#include "libassistant/shared/public/platform_audio_output.h"
#include "ui/accessibility/accessibility_switches.h"
namespace client_op = ::assistant::api::client_op;
......@@ -273,7 +275,11 @@ AssistantDeviceSettingsDelegate::AssistantDeviceSettingsDelegate(
AddSetting(std::make_unique<NightLightSetting>(context));
AddSetting(std::make_unique<DoNotDisturbSetting>(context));
AddSetting(std::make_unique<BrightnessSetting>(context));
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess)) {
AddSetting(std::make_unique<SwitchAccessSetting>(context));
}
}
AssistantDeviceSettingsDelegate::~AssistantDeviceSettingsDelegate() = default;
......
......@@ -44,9 +44,10 @@ constexpr char kNightLight[] = "NIGHT_LIGHT_SWITCH";
constexpr char kSwitchAccess[] = "SWITCH_ACCESS";
// Returns the settings that are always supported.
// Does not contain |SWITCH_ACCESS| as that is conditionally supported.
const std::vector<std::string> kAlwaysSupportedSettings = {
kWiFi, kBluetooth, kScreenBrightness,
kDoNotDisturb, kNightLight, kSwitchAccess};
kWiFi, kBluetooth, kScreenBrightness, kDoNotDisturb, kNightLight,
};
class ScopedDeviceActionsMock : public ScopedDeviceActions {
public:
......@@ -150,6 +151,20 @@ TEST_F(AssistantDeviceSettingsDelegateTest,
}
}
TEST_F(AssistantDeviceSettingsDelegateTest,
IsSettingSupportedShouldConditionallySupportSwitchAccess) {
auto* command_line = base::CommandLine::ForCurrentProcess();
command_line->RemoveSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
CreateAssistantDeviceSettingsDelegate();
EXPECT_FALSE(delegate()->IsSettingSupported(kSwitchAccess));
command_line->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
CreateAssistantDeviceSettingsDelegate();
EXPECT_TRUE(delegate()->IsSettingSupported(kSwitchAccess));
}
TEST_F(AssistantDeviceSettingsDelegateTest,
GetDeviceSettingsShouldReturnFalseForUnknownSetting) {
EXPECT_EQ(GetDeviceSettings("UNKNOWN_SETTING"),
......@@ -229,6 +244,8 @@ TEST_F(AssistantDeviceSettingsDelegateTest, ShouldTurnQuietModeOnAndOff) {
TEST_F(AssistantDeviceSettingsDelegateTest, ShouldTurnSwitchAccessOnAndOff) {
auto* command_line = base::CommandLine::ForCurrentProcess();
command_line->AppendSwitch(
::switches::kEnableExperimentalAccessibilitySwitchAccess);
StrictMock<ScopedDeviceActionsMock> device_actions;
CreateAssistantDeviceSettingsDelegate();
......
......@@ -28,6 +28,10 @@ const char kEnableExperimentalAccessibilityLanguageDetection[] =
const char kEnableExperimentalAccessibilityLanguageDetectionDynamic[] =
"enable-experimental-accessibility-language-detection-dynamic";
// Shows setting to enable Switch Access before it has launched.
const char kEnableExperimentalAccessibilitySwitchAccess[] =
"enable-experimental-accessibility-switch-access";
// Enables in progress Switch Access features for text input.
const char kEnableExperimentalAccessibilitySwitchAccessText[] =
"enable-experimental-accessibility-switch-access-text";
......
......@@ -18,6 +18,7 @@ AX_BASE_EXPORT extern const char
kEnableExperimentalAccessibilityLanguageDetection[];
AX_BASE_EXPORT extern const char
kEnableExperimentalAccessibilityLanguageDetectionDynamic[];
AX_BASE_EXPORT extern const char kEnableExperimentalAccessibilitySwitchAccess[];
AX_BASE_EXPORT extern const char
kEnableExperimentalAccessibilitySwitchAccessText[];
AX_BASE_EXPORT extern const char
......
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