| // Copyright 2015 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 UI_VIEWS_ANIMATION_INK_DROP_STATE_H_ |
| #define UI_VIEWS_ANIMATION_INK_DROP_STATE_H_ |
| |
| #include <iosfwd> |
| #include <string> |
| |
| #include "ui/views/views_export.h" |
| |
| namespace views { |
| |
| // The different states that the ink drop animation can be animated to. |
| enum class InkDropState { |
| // The ink drop is not visible. |
| HIDDEN, |
| // The view is being interacted with but the action to be triggered has not |
| // yet been determined, e.g. a mouse button down. |
| ACTION_PENDING, |
| // The quick action for the view has been triggered, e.g. a tap gesture or a |
| // mouse click on a button. |
| ACTION_TRIGGERED, |
| // A view is being interacted with and the pending action will be a secondary |
| // action, e.g. a long press. |
| ALTERNATE_ACTION_PENDING, |
| // The alternate action for the view has been triggered, e.g. a long press |
| // release to bring up a menu. |
| ALTERNATE_ACTION_TRIGGERED, |
| // An active state for a view that is not currently being interacted with. |
| // e.g. a pressed button that is showing a menu. |
| ACTIVATED, |
| // A previously active state has been toggled to inactive, e.g. a drop down |
| // menu is closed. |
| DEACTIVATED, |
| }; |
| |
| // Returns a human readable string for |state|. Useful for logging. |
| VIEWS_EXPORT std::string ToString(InkDropState state); |
| |
| // This is declared here for use in gtest-based unit tests but is defined in |
| // the views_test_support target. Depend on that to use this in your unit test. |
| // This should not be used in production code - call ToString() instead. |
| void PrintTo(InkDropState ink_drop_state, ::std::ostream* os); |
| |
| } // namespace views |
| |
| #endif // UI_VIEWS_ANIMATION_INK_DROP_STATE_H_ |