// Copyright 2021 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 "ash/utility/haptics_util.h" #include "ui/events/devices/haptic_touchpad_effects.h" #include "ui/ozone/public/input_controller.h" #include "ui/ozone/public/ozone_platform.h" namespace ash { namespace haptics_util { namespace { ui::InputController* g_test_input_controller = nullptr; } // namespace void SetInputControllerForTesting(ui::InputController* input_controller) { g_test_input_controller = input_controller; } void PlayHapticTouchpadEffect(ui::HapticTouchpadEffect effect, ui::HapticTouchpadEffectStrength strength) { ui::InputController* input_controller = g_test_input_controller ? g_test_input_controller : ui::OzonePlatform::GetInstance()->GetInputController(); DCHECK(input_controller); input_controller->PlayHapticTouchpadEffect(effect, strength); } void PlayHapticToggleEffect(bool on, ui::HapticTouchpadEffectStrength strength) { PlayHapticTouchpadEffect(on ? ui::HapticTouchpadEffect::kToggleOn : ui::HapticTouchpadEffect::kToggleOff, strength); } } // namespace haptics_util } // namespace ash