OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ | 5 #ifndef UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ |
6 #define UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ | 6 #define UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "third_party/skia/include/core/SkColor.h" | 10 #include "third_party/skia/include/core/SkColor.h" |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 void OnFocus() override; | 100 void OnFocus() override; |
101 void OnBlur() override; | 101 void OnBlur() override; |
102 void OnMouseEvent(ui::MouseEvent* event) override; | 102 void OnMouseEvent(ui::MouseEvent* event) override; |
103 | 103 |
104 // Overrideable methods to allow views to provide minor tweaks to the default | 104 // Overrideable methods to allow views to provide minor tweaks to the default |
105 // ink drop. | 105 // ink drop. |
106 virtual SkColor GetInkDropBaseColor() const; | 106 virtual SkColor GetInkDropBaseColor() const; |
107 | 107 |
108 // Subclasses can override to return a mask for the ink drop. By default, | 108 // Subclasses can override to return a mask for the ink drop. By default, |
109 // returns nullptr (i.e no mask). | 109 // returns nullptr (i.e no mask). |
| 110 // TODO(bruthig): InkDropMasks do not currently work on Windows. See |
| 111 // crbug.com/713359. |
110 virtual std::unique_ptr<views::InkDropMask> CreateInkDropMask() const; | 112 virtual std::unique_ptr<views::InkDropMask> CreateInkDropMask() const; |
111 | 113 |
112 // Provides access to |ink_drop_|. Implements lazy initialization of | 114 // Provides access to |ink_drop_|. Implements lazy initialization of |
113 // |ink_drop_| so as to avoid virtual method calls during construction since | 115 // |ink_drop_| so as to avoid virtual method calls during construction since |
114 // subclasses should be able to call SetInkDropMode() during construction. | 116 // subclasses should be able to call SetInkDropMode() during construction. |
115 InkDrop* GetInkDrop(); | 117 InkDrop* GetInkDrop(); |
116 | 118 |
117 // Initializes and sets a mask on |ink_drop_layer|. No-op if | 119 // Initializes and sets a mask on |ink_drop_layer|. No-op if |
118 // CreateInkDropMask() returns null. | 120 // CreateInkDropMask() returns null. |
119 void InstallInkDropMask(ui::Layer* ink_drop_layer); | 121 void InstallInkDropMask(ui::Layer* ink_drop_layer); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 | 156 |
155 bool destroying_; | 157 bool destroying_; |
156 | 158 |
157 std::unique_ptr<views::InkDropMask> ink_drop_mask_; | 159 std::unique_ptr<views::InkDropMask> ink_drop_mask_; |
158 | 160 |
159 DISALLOW_COPY_AND_ASSIGN(InkDropHostView); | 161 DISALLOW_COPY_AND_ASSIGN(InkDropHostView); |
160 }; | 162 }; |
161 } // namespace views | 163 } // namespace views |
162 | 164 |
163 #endif // UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ | 165 #endif // UI_VIEWS_ANIMATION_INK_DROP_HOST_VIEW_H_ |
OLD | NEW |