Commit 5f242ae3 authored by Kevin Schoedel's avatar Kevin Schoedel Committed by Commit Bot

[chromecast] Clean up earcon player.

Replaced Stub with parent implementation stubs to make it easier
to add sounds; made the proxy explicit; renamed things for clarity.
Follow-up CL will remove accessibility_sound_delegate.h.

Bug: internal b/73383411
Test: manual
Change-Id: I95d6619f373024f66aed6204ee667585c7db0f76
Reviewed-on: https://chromium-review.googlesource.com/1166029Reviewed-by: default avatarAlex Sakhartchouk <alexst@chromium.org>
Commit-Queue: Kevin Schoedel <kpschoedel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581931}
parent fe36308d
...@@ -290,7 +290,9 @@ cast_source_set("browser") { ...@@ -290,7 +290,9 @@ cast_source_set("browser") {
"accessibility/accessibility_manager.cc", "accessibility/accessibility_manager.cc",
"accessibility/accessibility_manager.h", "accessibility/accessibility_manager.h",
"accessibility/accessibility_sound_delegate.h", "accessibility/accessibility_sound_delegate.h",
"accessibility/accessibility_sound_delegate_stub.h", "accessibility/accessibility_sound_player.h",
"accessibility/accessibility_sound_proxy.h",
"accessibility/accessibility_sound_proxy.cc",
"accessibility/touch_exploration_controller.cc", "accessibility/touch_exploration_controller.cc",
"accessibility/touch_exploration_controller.h", "accessibility/touch_exploration_controller.h",
"accessibility/touch_exploration_manager.cc", "accessibility/touch_exploration_manager.cc",
......
...@@ -15,7 +15,8 @@ namespace shell { ...@@ -15,7 +15,8 @@ namespace shell {
AccessibilityManager::AccessibilityManager( AccessibilityManager::AccessibilityManager(
aura::WindowTreeHost* window_tree_host) aura::WindowTreeHost* window_tree_host)
: window_tree_host_(window_tree_host) { : window_tree_host_(window_tree_host),
accessibility_sound_proxy_(std::make_unique<AccessibilitySoundPlayer>()) {
DCHECK(window_tree_host); DCHECK(window_tree_host);
aura::Window* root_window = window_tree_host->window()->GetRootWindow(); aura::Window* root_window = window_tree_host->window()->GetRootWindow();
wm::ActivationClient* activation_client = wm::ActivationClient* activation_client =
...@@ -26,7 +27,8 @@ AccessibilityManager::AccessibilityManager( ...@@ -26,7 +27,8 @@ AccessibilityManager::AccessibilityManager(
std::make_unique<AccessibilityFocusRingController>(root_window); std::make_unique<AccessibilityFocusRingController>(root_window);
touch_exploration_manager_ = std::make_unique<TouchExplorationManager>( touch_exploration_manager_ = std::make_unique<TouchExplorationManager>(
root_window, activation_client, root_window, activation_client,
accessibility_focus_ring_controller_.get()); accessibility_focus_ring_controller_.get(),
&accessibility_sound_proxy_);
triple_tap_detector_ = std::make_unique<TripleTapDetector>(root_window, this); triple_tap_detector_ = std::make_unique<TripleTapDetector>(root_window, this);
magnification_controller_ = magnification_controller_ =
std::make_unique<PartialMagnificationController>(root_window); std::make_unique<PartialMagnificationController>(root_window);
...@@ -69,10 +71,14 @@ void AccessibilityManager::HideHighlights() { ...@@ -69,10 +71,14 @@ void AccessibilityManager::HideHighlights() {
accessibility_focus_ring_controller_->HideHighlights(); accessibility_focus_ring_controller_->HideHighlights();
} }
void AccessibilityManager::EnableTouchExploration(bool enable) { void AccessibilityManager::SetScreenReader(bool enable) {
touch_exploration_manager_->Enable(enable); touch_exploration_manager_->Enable(enable);
} }
void AccessibilityManager::EnableTouchExploration(bool enable) {
SetScreenReader(enable);
}
void AccessibilityManager::SetTouchAccessibilityAnchorPoint( void AccessibilityManager::SetTouchAccessibilityAnchorPoint(
const gfx::Point& anchor_point) { const gfx::Point& anchor_point) {
touch_exploration_manager_->SetTouchAccessibilityAnchorPoint(anchor_point); touch_exploration_manager_->SetTouchAccessibilityAnchorPoint(anchor_point);
...@@ -96,10 +102,9 @@ void AccessibilityManager::OnTripleTap(const gfx::Point& tap_location) { ...@@ -96,10 +102,9 @@ void AccessibilityManager::OnTripleTap(const gfx::Point& tap_location) {
!magnification_controller_->IsEnabled()); !magnification_controller_->IsEnabled());
} }
void AccessibilityManager::SetAccessibilitySoundDelegate( void AccessibilityManager::SetAccessibilitySoundPlayer(
std::unique_ptr<AccessibilitySoundDelegate> delegate) { std::unique_ptr<AccessibilitySoundPlayer> player) {
touch_exploration_manager_->SetAccessibilitySoundDelegate( accessibility_sound_proxy_.ResetPlayer(std::move(player));
std::move(delegate));
} }
} // namespace shell } // namespace shell
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
#include "chromecast/browser/accessibility/accessibility_sound_proxy.h"
#include "chromecast/browser/accessibility/touch_exploration_manager.h" #include "chromecast/browser/accessibility/touch_exploration_manager.h"
#include "chromecast/graphics/accessibility/accessibility_focus_ring_controller.h" #include "chromecast/graphics/accessibility/accessibility_focus_ring_controller.h"
#include "chromecast/graphics/gestures/triple_tap_detector.h" #include "chromecast/graphics/gestures/triple_tap_detector.h"
...@@ -55,7 +56,11 @@ class AccessibilityManager : public TripleTapDetectorDelegate { ...@@ -55,7 +56,11 @@ class AccessibilityManager : public TripleTapDetectorDelegate {
// Hides highlight on screen. // Hides highlight on screen.
void HideHighlights(); void HideHighlights();
// Enable or disable touch exploration. // Enable or disable screen reader support, including touch exploration.
void SetScreenReader(bool enable);
// TODO(kpschoedel): remove once AccessibilityServiceImpl::SetScreenReader()
// changes to call SetScreenReader() here.
void EnableTouchExploration(bool enable); void EnableTouchExploration(bool enable);
// Update the touch exploration controller so that synthesized // Update the touch exploration controller so that synthesized
...@@ -74,18 +79,28 @@ class AccessibilityManager : public TripleTapDetectorDelegate { ...@@ -74,18 +79,28 @@ class AccessibilityManager : public TripleTapDetectorDelegate {
// TripleTapDetectorDelegate implementation // TripleTapDetectorDelegate implementation
void OnTripleTap(const gfx::Point& tap_location) override; void OnTripleTap(const gfx::Point& tap_location) override;
// Sets the player for earcons.
void SetAccessibilitySoundPlayer(
std::unique_ptr<AccessibilitySoundPlayer> player);
// Sets the delegate for earcons. // Sets the delegate for earcons.
// TODO(kpschoedel) remove when caller has changed.
void SetAccessibilitySoundDelegate( void SetAccessibilitySoundDelegate(
std::unique_ptr<AccessibilitySoundDelegate> delegate); std::unique_ptr<AccessibilitySoundPlayer> player) {
SetAccessibilitySoundPlayer(std::move(player));
}
private: private:
aura::WindowTreeHost* window_tree_host_;
std::unique_ptr<FocusRingController> focus_ring_controller_; std::unique_ptr<FocusRingController> focus_ring_controller_;
std::unique_ptr<AccessibilityFocusRingController> std::unique_ptr<AccessibilityFocusRingController>
accessibility_focus_ring_controller_; accessibility_focus_ring_controller_;
aura::WindowTreeHost* window_tree_host_;
std::unique_ptr<TouchExplorationManager> touch_exploration_manager_; std::unique_ptr<TouchExplorationManager> touch_exploration_manager_;
std::unique_ptr<TripleTapDetector> triple_tap_detector_; std::unique_ptr<TripleTapDetector> triple_tap_detector_;
std::unique_ptr<MagnificationController> magnification_controller_; std::unique_ptr<MagnificationController> magnification_controller_;
AccessibilitySoundProxy accessibility_sound_proxy_;
}; };
} // namespace shell } // namespace shell
......
...@@ -2,23 +2,17 @@ ...@@ -2,23 +2,17 @@
// 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.
// TODO(kpschoedel) remove this file when dependencies have changed.
#ifndef CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_H_ #ifndef CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_H_
#define CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_H_ #define CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_H_
#include "chromecast/browser/accessibility/accessibility_sound_player.h"
namespace chromecast { namespace chromecast {
namespace shell { namespace shell {
// Provides audio feedback for TouchExplorationController. using AccessibilitySoundDelegate = AccessibilitySoundPlayer;
class AccessibilitySoundDelegate {
public:
AccessibilitySoundDelegate() {}
virtual ~AccessibilitySoundDelegate() {}
virtual void PlayPassthroughEarcon() = 0;
virtual void PlayEnterScreenEarcon() = 0;
virtual void PlayExitScreenEarcon() = 0;
virtual void PlayTouchTypeEarcon() = 0;
};
} // namespace shell } // namespace shell
} // namespace chromecast } // namespace chromecast
......
...@@ -2,25 +2,25 @@ ...@@ -2,25 +2,25 @@
// 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.
#ifndef CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_STUB_H_ #ifndef CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PLAYER_H_
#define CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_STUB_H_ #define CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PLAYER_H_
#include "chromecast/browser/accessibility/accessibility_sound_delegate.h"
namespace chromecast { namespace chromecast {
namespace shell { namespace shell {
class AccessibilitySoundDelegateStub : public AccessibilitySoundDelegate { // Provides audio feedback in screen reader mode.
class AccessibilitySoundPlayer {
public: public:
AccessibilitySoundDelegateStub() = default; AccessibilitySoundPlayer() {}
~AccessibilitySoundDelegateStub() override = default; virtual ~AccessibilitySoundPlayer() {}
void PlayPassthroughEarcon() override {} virtual void PlayPassthroughEarcon() {}
void PlayEnterScreenEarcon() override {} virtual void PlayPassthroughEndEarcon() {}
void PlayExitScreenEarcon() override {} virtual void PlayEnterScreenEarcon() {}
void PlayTouchTypeEarcon() override {} virtual void PlayExitScreenEarcon() {}
virtual void PlayTouchTypeEarcon() {}
}; };
} // namespace shell } // namespace shell
} // namespace chromecast } // namespace chromecast
#endif // CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_DELEGATE_STUB_H_ #endif // CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PLAYER_H_
// 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.
#include "chromecast/browser/accessibility/accessibility_sound_proxy.h"
namespace chromecast {
namespace shell {
AccessibilitySoundProxy::AccessibilitySoundProxy(
std::unique_ptr<AccessibilitySoundPlayer> player)
: player_(std::move(player)) {}
AccessibilitySoundProxy::~AccessibilitySoundProxy() {}
void AccessibilitySoundProxy::ResetPlayer(
std::unique_ptr<AccessibilitySoundPlayer> player) {
player_ = std::move(player);
}
void AccessibilitySoundProxy::PlayPassthroughEarcon() {
player_->PlayPassthroughEarcon();
}
void AccessibilitySoundProxy::PlayPassthroughEndEarcon() {
player_->PlayPassthroughEndEarcon();
}
void AccessibilitySoundProxy::PlayEnterScreenEarcon() {
player_->PlayEnterScreenEarcon();
}
void AccessibilitySoundProxy::PlayExitScreenEarcon() {
player_->PlayExitScreenEarcon();
}
void AccessibilitySoundProxy::PlayTouchTypeEarcon() {
player_->PlayTouchTypeEarcon();
}
} // namespace shell
} // namespace chromecast
// 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 CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PROXY_H_
#define CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PROXY_H_
#include <memory>
#include "chromecast/browser/accessibility/accessibility_sound_player.h"
namespace chromecast {
namespace shell {
// Provides audio feedback in screen reader mode.
class AccessibilitySoundProxy : public AccessibilitySoundPlayer {
public:
AccessibilitySoundProxy(std::unique_ptr<AccessibilitySoundPlayer> player);
~AccessibilitySoundProxy() override;
void ResetPlayer(std::unique_ptr<AccessibilitySoundPlayer> player);
// AccessibilitySoundPlayer overrides:
void PlayPassthroughEarcon() override;
void PlayPassthroughEndEarcon() override;
void PlayEnterScreenEarcon() override;
void PlayExitScreenEarcon() override;
void PlayTouchTypeEarcon() override;
private:
std::unique_ptr<AccessibilitySoundPlayer> player_;
};
} // namespace shell
} // namespace chromecast
#endif // CHROMECAST_BROWSER_ACCESSIBILITY_ACCESSIBILITY_SOUND_PROXY_H_
...@@ -41,10 +41,10 @@ void SetTouchAccessibilityFlag(ui::Event* event) { ...@@ -41,10 +41,10 @@ void SetTouchAccessibilityFlag(ui::Event* event) {
TouchExplorationController::TouchExplorationController( TouchExplorationController::TouchExplorationController(
aura::Window* root_window, aura::Window* root_window,
TouchExplorationControllerDelegate* delegate, TouchExplorationControllerDelegate* delegate,
AccessibilitySoundDelegate* accessibility_sound_delegate) AccessibilitySoundPlayer* accessibility_sound_player)
: root_window_(root_window), : root_window_(root_window),
delegate_(delegate), delegate_(delegate),
accessibility_sound_delegate_(accessibility_sound_delegate), accessibility_sound_player_(accessibility_sound_player),
state_(NO_FINGERS_DOWN), state_(NO_FINGERS_DOWN),
anchor_point_state_(ANCHOR_POINT_NONE), anchor_point_state_(ANCHOR_POINT_NONE),
gesture_provider_(new ui::GestureProviderAura(this, this)), gesture_provider_(new ui::GestureProviderAura(this, this)),
...@@ -187,7 +187,7 @@ ui::EventRewriteStatus TouchExplorationController::RewriteEvent( ...@@ -187,7 +187,7 @@ ui::EventRewriteStatus TouchExplorationController::RewriteEvent(
VLOG(1) << "Leaving screen"; VLOG(1) << "Leaving screen";
// Indicates to the user that they are leaving the screen. // Indicates to the user that they are leaving the screen.
accessibility_sound_delegate_->PlayExitScreenEarcon(); accessibility_sound_player_->PlayExitScreenEarcon();
if (current_touch_ids_.size() == 0) { if (current_touch_ids_.size() == 0) {
SET_STATE(NO_FINGERS_DOWN); SET_STATE(NO_FINGERS_DOWN);
...@@ -301,7 +301,7 @@ ui::EventRewriteStatus TouchExplorationController::InNoFingersDown( ...@@ -301,7 +301,7 @@ ui::EventRewriteStatus TouchExplorationController::InNoFingersDown(
// handle it. // handle it.
int edge = FindEdgesWithinInset(event.location(), kLeavingScreenEdge); int edge = FindEdgesWithinInset(event.location(), kLeavingScreenEdge);
if (edge != NO_EDGE) { if (edge != NO_EDGE) {
accessibility_sound_delegate_->PlayEnterScreenEarcon(); accessibility_sound_player_->PlayEnterScreenEarcon();
SET_STATE(EDGE_PASSTHROUGH); SET_STATE(EDGE_PASSTHROUGH);
return ui::EVENT_REWRITE_CONTINUE; return ui::EVENT_REWRITE_CONTINUE;
} }
...@@ -542,6 +542,7 @@ ui::EventRewriteStatus TouchExplorationController::InCornerPassthrough( ...@@ -542,6 +542,7 @@ ui::EventRewriteStatus TouchExplorationController::InCornerPassthrough(
if (type == ui::ET_TOUCH_MOVED && in_a_bottom_corner) if (type == ui::ET_TOUCH_MOVED && in_a_bottom_corner)
return ui::EVENT_REWRITE_DISCARD; return ui::EVENT_REWRITE_DISCARD;
accessibility_sound_player_->PlayPassthroughEndEarcon();
if (current_touch_ids_.size() == 0) { if (current_touch_ids_.size() == 0) {
SET_STATE(NO_FINGERS_DOWN); SET_STATE(NO_FINGERS_DOWN);
return ui::EVENT_REWRITE_DISCARD; return ui::EVENT_REWRITE_DISCARD;
...@@ -705,7 +706,7 @@ void TouchExplorationController::MaybeSendSimulatedTapInLiftActivationBounds( ...@@ -705,7 +706,7 @@ void TouchExplorationController::MaybeSendSimulatedTapInLiftActivationBounds(
if (lift_activation_bounds_.Contains(anchor_location.x(), if (lift_activation_bounds_.Contains(anchor_location.x(),
anchor_location.y()) && anchor_location.y()) &&
lift_activation_bounds_.Contains(location)) { lift_activation_bounds_.Contains(location)) {
accessibility_sound_delegate_->PlayTouchTypeEarcon(); accessibility_sound_player_->PlayTouchTypeEarcon();
SendSimulatedTap(); SendSimulatedTap();
} }
} }
...@@ -843,7 +844,7 @@ void TouchExplorationController::OnPassthroughTimerFired() { ...@@ -843,7 +844,7 @@ void TouchExplorationController::OnPassthroughTimerFired() {
if (sound_timer_.IsRunning()) if (sound_timer_.IsRunning())
sound_timer_.Stop(); sound_timer_.Stop();
accessibility_sound_delegate_->PlayPassthroughEarcon(); accessibility_sound_player_->PlayPassthroughEarcon();
SET_STATE(CORNER_PASSTHROUGH); SET_STATE(CORNER_PASSTHROUGH);
return; return;
} }
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
#include "base/memory/weak_ptr.h" #include "base/memory/weak_ptr.h"
#include "base/timer/timer.h" #include "base/timer/timer.h"
#include "base/values.h" #include "base/values.h"
#include "chromecast/browser/accessibility/accessibility_sound_delegate.h" #include "chromecast/browser/accessibility/accessibility_sound_player.h"
#include "ui/accessibility/ax_enums.mojom.h" #include "ui/accessibility/ax_enums.mojom.h"
#include "ui/events/event.h" #include "ui/events/event.h"
#include "ui/events/event_rewriter.h" #include "ui/events/event_rewriter.h"
...@@ -164,7 +164,7 @@ class TouchExplorationController : public ui::EventRewriter, ...@@ -164,7 +164,7 @@ class TouchExplorationController : public ui::EventRewriter,
TouchExplorationController( TouchExplorationController(
aura::Window* root_window, aura::Window* root_window,
TouchExplorationControllerDelegate* delegate, TouchExplorationControllerDelegate* delegate,
AccessibilitySoundDelegate* accessibility_sound_delegate); AccessibilitySoundPlayer* accessibility_sound_player);
~TouchExplorationController() override; ~TouchExplorationController() override;
// Make synthesized touch events are anchored at this point. This is // Make synthesized touch events are anchored at this point. This is
...@@ -434,7 +434,7 @@ class TouchExplorationController : public ui::EventRewriter, ...@@ -434,7 +434,7 @@ class TouchExplorationController : public ui::EventRewriter,
TouchExplorationControllerDelegate* delegate_; TouchExplorationControllerDelegate* delegate_;
// Handles earcons. Not owned. // Handles earcons. Not owned.
AccessibilitySoundDelegate* accessibility_sound_delegate_; AccessibilitySoundPlayer* accessibility_sound_player_;
// A set of touch ids for fingers currently touching the screen. // A set of touch ids for fingers currently touching the screen.
std::vector<int> current_touch_ids_; std::vector<int> current_touch_ids_;
......
...@@ -91,10 +91,10 @@ class MockTouchExplorationControllerDelegate ...@@ -91,10 +91,10 @@ class MockTouchExplorationControllerDelegate
ax::mojom::Gesture last_gesture_ = ax::mojom::Gesture::kNone; ax::mojom::Gesture last_gesture_ = ax::mojom::Gesture::kNone;
}; };
class MockAccessibilitySoundDelegate : public AccessibilitySoundDelegate { class MockAccessibilitySoundPlayer : public AccessibilitySoundPlayer {
public: public:
MockAccessibilitySoundDelegate() {} MockAccessibilitySoundPlayer() {}
~MockAccessibilitySoundDelegate() override {} ~MockAccessibilitySoundPlayer() override {}
void PlayPassthroughEarcon() override { ++num_times_passthrough_played_; } void PlayPassthroughEarcon() override { ++num_times_passthrough_played_; }
void PlayExitScreenEarcon() override { ++num_times_exit_screen_played_; } void PlayExitScreenEarcon() override { ++num_times_exit_screen_played_; }
...@@ -318,7 +318,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase { ...@@ -318,7 +318,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase {
} else if (on && !touch_exploration_controller_.get()) { } else if (on && !touch_exploration_controller_.get()) {
touch_exploration_controller_.reset( touch_exploration_controller_.reset(
new TouchExplorationControllerTestApi(new TouchExplorationController( new TouchExplorationControllerTestApi(new TouchExplorationController(
root_window(), &delegate_, &accessibility_sound_delegate_))); root_window(), &delegate_, &accessibility_sound_player_)));
touch_exploration_controller_->InstallRewriter(root_window()); touch_exploration_controller_->InstallRewriter(root_window());
cursor_client()->ShowCursor(); cursor_client()->ShowCursor();
cursor_client()->DisableMouseEvents(); cursor_client()->DisableMouseEvents();
...@@ -337,7 +337,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase { ...@@ -337,7 +337,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase {
// Checks that Corner Passthrough is working. Assumes that corner is the // Checks that Corner Passthrough is working. Assumes that corner is the
// bottom left corner or the bottom right corner. // bottom left corner or the bottom right corner.
void AssertCornerPassthroughWorking(gfx::Point corner) { void AssertCornerPassthroughWorking(gfx::Point corner) {
ASSERT_EQ(0U, accessibility_sound_delegate_.NumPassthroughSounds()); ASSERT_EQ(0U, accessibility_sound_player_.NumPassthroughSounds());
ui::TouchEvent first_press( ui::TouchEvent first_press(
ui::ET_TOUCH_PRESSED, corner, Now(), ui::ET_TOUCH_PRESSED, corner, Now(),
...@@ -355,7 +355,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase { ...@@ -355,7 +355,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase {
ui::TouchEvent passthrough_press( ui::TouchEvent passthrough_press(
ui::ET_TOUCH_PRESSED, passthrough, Now(), ui::ET_TOUCH_PRESSED, passthrough, Now(),
ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, 1)); ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, 1));
ASSERT_EQ(1U, accessibility_sound_delegate_.NumPassthroughSounds()); ASSERT_EQ(1U, accessibility_sound_player_.NumPassthroughSounds());
generator_->Dispatch(&passthrough_press); generator_->Dispatch(&passthrough_press);
generator_->ReleaseTouchId(1); generator_->ReleaseTouchId(1);
generator_->PressTouchId(1); generator_->PressTouchId(1);
...@@ -433,7 +433,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase { ...@@ -433,7 +433,7 @@ class TouchExplorationTest : public aura::test::AuraTestBase {
ui::GestureDetector::Config gesture_detector_config_; ui::GestureDetector::Config gesture_detector_config_;
base::SimpleTestTickClock simulated_clock_; base::SimpleTestTickClock simulated_clock_;
MockTouchExplorationControllerDelegate delegate_; MockTouchExplorationControllerDelegate delegate_;
MockAccessibilitySoundDelegate accessibility_sound_delegate_; MockAccessibilitySoundPlayer accessibility_sound_player_;
private: private:
EventCapturer event_capturer_; EventCapturer event_capturer_;
...@@ -1788,9 +1788,9 @@ TEST_F(TouchExplorationTest, EnterEarconPlays) { ...@@ -1788,9 +1788,9 @@ TEST_F(TouchExplorationTest, EnterEarconPlays) {
ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, 1)); ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, 1));
generator_->Dispatch(&touch_event); generator_->Dispatch(&touch_event);
ASSERT_EQ(1U, accessibility_sound_delegate_.NumEnterScreenSounds()); ASSERT_EQ(1U, accessibility_sound_player_.NumEnterScreenSounds());
generator_->ReleaseTouchId(1); generator_->ReleaseTouchId(1);
accessibility_sound_delegate_.ResetCountersToZero(); accessibility_sound_player_.ResetCountersToZero();
} }
} }
...@@ -1830,8 +1830,8 @@ TEST_F(TouchExplorationTest, ExitEarconPlays) { ...@@ -1830,8 +1830,8 @@ TEST_F(TouchExplorationTest, ExitEarconPlays) {
generator_->MoveTouch(initial_press); generator_->MoveTouch(initial_press);
generator_->MoveTouch(*point); generator_->MoveTouch(*point);
generator_->ReleaseTouch(); generator_->ReleaseTouch();
ASSERT_EQ(1U, accessibility_sound_delegate_.NumExitScreenSounds()); ASSERT_EQ(1U, accessibility_sound_player_.NumExitScreenSounds());
accessibility_sound_delegate_.ResetCountersToZero(); accessibility_sound_player_.ResetCountersToZero();
} }
} }
......
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
#include "chromecast/browser/accessibility/touch_exploration_manager.h" #include "chromecast/browser/accessibility/touch_exploration_manager.h"
#include "chromecast/browser/accessibility/accessibility_sound_delegate_stub.h"
#include "chromecast/browser/cast_browser_context.h" #include "chromecast/browser/cast_browser_context.h"
#include "chromecast/browser/cast_browser_process.h" #include "chromecast/browser/cast_browser_process.h"
#include "chromecast/common/extensions_api/accessibility_private.h" #include "chromecast/common/extensions_api/accessibility_private.h"
...@@ -24,13 +23,13 @@ namespace shell { ...@@ -24,13 +23,13 @@ namespace shell {
TouchExplorationManager::TouchExplorationManager( TouchExplorationManager::TouchExplorationManager(
aura::Window* root_window, aura::Window* root_window,
wm::ActivationClient* activation_client, wm::ActivationClient* activation_client,
AccessibilityFocusRingController* accessibility_focus_ring_controller) AccessibilityFocusRingController* accessibility_focus_ring_controller,
AccessibilitySoundPlayer* accessibility_sound_player)
: touch_exploration_enabled_(false), : touch_exploration_enabled_(false),
root_window_(root_window), root_window_(root_window),
activation_client_(activation_client), activation_client_(activation_client),
accessibility_focus_ring_controller_(accessibility_focus_ring_controller), accessibility_focus_ring_controller_(accessibility_focus_ring_controller),
accessibility_sound_delegate_( accessibility_sound_player_(accessibility_sound_player) {
std::make_unique<AccessibilitySoundDelegateStub>()) {
DCHECK(root_window); DCHECK(root_window);
root_window->GetHost()->GetEventSource()->AddEventRewriter(this); root_window->GetHost()->GetEventSource()->AddEventRewriter(this);
UpdateTouchExplorationState(); UpdateTouchExplorationState();
...@@ -109,7 +108,7 @@ void TouchExplorationManager::UpdateTouchExplorationState() { ...@@ -109,7 +108,7 @@ void TouchExplorationManager::UpdateTouchExplorationState() {
if (!touch_exploration_controller_.get()) { if (!touch_exploration_controller_.get()) {
touch_exploration_controller_ = touch_exploration_controller_ =
std::make_unique<TouchExplorationController>(root_window_, this, std::make_unique<TouchExplorationController>(root_window_, this,
accessibility_sound_delegate_.get()); accessibility_sound_player_);
} }
if (pass_through_surface) { if (pass_through_surface) {
const display::Display display = const display::Display display =
...@@ -129,11 +128,5 @@ void TouchExplorationManager::UpdateTouchExplorationState() { ...@@ -129,11 +128,5 @@ void TouchExplorationManager::UpdateTouchExplorationState() {
} }
} }
void TouchExplorationManager::SetAccessibilitySoundDelegate(
std::unique_ptr<AccessibilitySoundDelegate> delegate) {
accessibility_sound_delegate_ = std::move(delegate);
}
} // namespace shell } // namespace shell
} // namespace chromecast } // namespace chromecast
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#ifndef CHROMECAST_BROWSER_ACCESSIBILITY_TOUCH_EXPLORATION_MANAGER_H_ #ifndef CHROMECAST_BROWSER_ACCESSIBILITY_TOUCH_EXPLORATION_MANAGER_H_
#define CHROMECAST_BROWSER_ACCESSIBILITY_TOUCH_EXPLORATION_MANAGER_H_ #define CHROMECAST_BROWSER_ACCESSIBILITY_TOUCH_EXPLORATION_MANAGER_H_
#include "chromecast/browser/accessibility/accessibility_sound_delegate.h" #include "chromecast/browser/accessibility/accessibility_sound_player.h"
#include "chromecast/browser/accessibility/touch_exploration_controller.h" #include "chromecast/browser/accessibility/touch_exploration_controller.h"
#include "chromecast/graphics/accessibility/accessibility_focus_ring_controller.h" #include "chromecast/graphics/accessibility/accessibility_focus_ring_controller.h"
#include "ui/events/event_rewriter.h" #include "ui/events/event_rewriter.h"
...@@ -28,7 +28,8 @@ class TouchExplorationManager : public ui::EventRewriter, ...@@ -28,7 +28,8 @@ class TouchExplorationManager : public ui::EventRewriter,
TouchExplorationManager( TouchExplorationManager(
aura::Window* root_window, aura::Window* root_window,
wm::ActivationClient* activation_client, wm::ActivationClient* activation_client,
AccessibilityFocusRingController* accessibility_focus_ring_controller); AccessibilityFocusRingController* accessibility_focus_ring_controller,
AccessibilitySoundPlayer* accessibility_sound_player);
~TouchExplorationManager() override; ~TouchExplorationManager() override;
// Enable or disable touch exploration. // Enable or disable touch exploration.
...@@ -56,10 +57,6 @@ class TouchExplorationManager : public ui::EventRewriter, ...@@ -56,10 +57,6 @@ class TouchExplorationManager : public ui::EventRewriter,
// events are anchored at this point. // events are anchored at this point.
void SetTouchAccessibilityAnchorPoint(const gfx::Point& anchor_point); void SetTouchAccessibilityAnchorPoint(const gfx::Point& anchor_point);
// Sets the delegate for earcons.
void SetAccessibilitySoundDelegate(
std::unique_ptr<AccessibilitySoundDelegate> delegate);
private: private:
void UpdateTouchExplorationState(); void UpdateTouchExplorationState();
...@@ -70,7 +67,7 @@ class TouchExplorationManager : public ui::EventRewriter, ...@@ -70,7 +67,7 @@ class TouchExplorationManager : public ui::EventRewriter,
aura::Window* root_window_; aura::Window* root_window_;
wm::ActivationClient* activation_client_; wm::ActivationClient* activation_client_;
AccessibilityFocusRingController* accessibility_focus_ring_controller_; AccessibilityFocusRingController* accessibility_focus_ring_controller_;
std::unique_ptr<AccessibilitySoundDelegate> accessibility_sound_delegate_; AccessibilitySoundPlayer* accessibility_sound_player_;
DISALLOW_COPY_AND_ASSIGN(TouchExplorationManager); DISALLOW_COPY_AND_ASSIGN(TouchExplorationManager);
}; };
......
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