|
6 | 6 | @import '../../material/core/ripple/ripple'; |
7 | 7 | @import '../mdc-helpers/mdc-helpers'; |
8 | 8 |
|
| 9 | +// Selector for the element that has a background color and opacity applied to its ::before and |
| 10 | +// ::after for state interactions (hover, active, focus). Their API calls this their |
| 11 | +// "ripple target", but we do not use it as our ripple, just state color. |
| 12 | +$mat-button-state-target: '.mat-mdc-button-state'; |
| 13 | + |
9 | 14 | // Applies the disabled theme color to the text color. |
10 | 15 | @mixin _mat-button-disabled-color() { |
11 | 16 | @include mdc-theme-prop(color, |
|
49 | 54 | // Add state interactions for hover, focus, press, active. Colors are changed based on |
50 | 55 | // the mixin mdc-states-base-color |
51 | 56 | .mat-mdc-button, .mat-mdc-raised-button, .mat-mdc-unelevated-button, .mat-mdc-outlined-button { |
52 | | - @include mdc-states($query: $mat-theme-styles-query); |
| 57 | + @include mdc-states( |
| 58 | + $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
53 | 59 | } |
54 | 60 |
|
55 | 61 | .mat-mdc-button, .mat-mdc-outlined-button { |
|
59 | 65 |
|
60 | 66 | &.mat-primary { |
61 | 67 | @include mdc-button-ink-color(primary, $query: $mat-theme-styles-query); |
62 | | - @include mdc-states-base-color(primary, $query: $mat-theme-styles-query); |
| 68 | + @include mdc-states-base-color( |
| 69 | + primary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
63 | 70 | @include _mat-button-ripple-ink-color(primary); |
64 | 71 | } |
65 | 72 |
|
66 | 73 | &.mat-accent { |
67 | 74 | @include mdc-button-ink-color(secondary, $query: $mat-theme-styles-query); |
68 | | - @include mdc-states-base-color(secondary, $query: $mat-theme-styles-query); |
| 75 | + @include mdc-states-base-color( |
| 76 | + secondary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
69 | 77 | @include _mat-button-ripple-ink-color(secondary); |
70 | 78 | } |
71 | 79 |
|
72 | 80 | &.mat-warn { |
73 | 81 | @include mdc-button-ink-color(error, $query: $mat-theme-styles-query); |
74 | | - @include mdc-states-base-color(error, $query: $mat-theme-styles-query); |
| 82 | + @include mdc-states-base-color( |
| 83 | + error, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
75 | 84 | @include _mat-button-ripple-ink-color(error); |
76 | 85 | } |
77 | 86 | } |
|
82 | 91 | @include mdc-button-container-fill-color( |
83 | 92 | $mdc-theme-surface, $query: $mat-theme-styles-query); |
84 | 93 | @include mdc-button-ink-color($mdc-theme-on-surface, $query: $mat-theme-styles-query); |
85 | | - @include mdc-states-base-color($mdc-theme-on-surface, $query: $mat-theme-styles-query); |
| 94 | + @include mdc-states-base-color( |
| 95 | + $mdc-theme-on-surface, $query: $mat-theme-styles-query, |
| 96 | + $ripple-target: $mat-button-state-target); |
86 | 97 | } |
87 | 98 |
|
88 | 99 | &.mat-primary { |
89 | 100 | @include mdc-button-container-fill-color(primary, $query: $mat-theme-styles-query); |
90 | 101 | @include mdc-button-ink-color(on-primary, $query: $mat-theme-styles-query); |
91 | | - @include mdc-states-base-color(on-primary, $query: $mat-theme-styles-query); |
| 102 | + @include mdc-states-base-color( |
| 103 | + on-primary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
92 | 104 | @include _mat-button-ripple-ink-color(on-primary); |
93 | 105 | } |
94 | 106 |
|
95 | 107 | &.mat-accent { |
96 | 108 | @include mdc-button-container-fill-color(secondary, $query: $mat-theme-styles-query); |
97 | 109 | @include mdc-button-ink-color(on-secondary, $query: $mat-theme-styles-query); |
98 | | - @include mdc-states-base-color(on-secondary, $query: $mat-theme-styles-query); |
| 110 | + @include mdc-states-base-color( |
| 111 | + on-secondary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
99 | 112 | @include _mat-button-ripple-ink-color(on-secondary); |
100 | 113 | } |
101 | 114 |
|
102 | 115 | &.mat-warn { |
103 | 116 | @include mdc-button-container-fill-color(error, $query: $mat-theme-styles-query); |
104 | 117 | @include mdc-button-ink-color(on-error, $query: $mat-theme-styles-query); |
105 | | - @include mdc-states-base-color(on-error, $query: $mat-theme-styles-query); |
| 118 | + @include mdc-states-base-color( |
| 119 | + on-error, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
106 | 120 | @include _mat-button-ripple-ink-color(on-error); |
107 | 121 | } |
108 | 122 |
|
|
162 | 176 | @include mdc-states($query: $mat-theme-styles-query); |
163 | 177 |
|
164 | 178 | &.mat-unthemed { |
165 | | - @include mdc-states-base-color($mdc-theme-on-surface, $query: $mat-theme-styles-query); |
| 179 | + @include mdc-states-base-color( |
| 180 | + $mdc-theme-on-surface, $query: $mat-theme-styles-query, |
| 181 | + $ripple-target: $mat-button-state-target); |
166 | 182 | @include mdc-fab-container-color($mdc-theme-surface, $query: $mat-theme-styles-query); |
167 | 183 | @include mdc-fab-ink-color($mdc-theme-on-surface, $query: $mat-theme-styles-query); |
168 | 184 | } |
169 | 185 |
|
170 | 186 | &.mat-primary { |
171 | | - @include mdc-states-base-color(on-primary, $query: $mat-theme-styles-query); |
| 187 | + @include mdc-states-base-color( |
| 188 | + on-primary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
172 | 189 | @include mdc-fab-container-color(primary, $query: $mat-theme-styles-query); |
173 | 190 | @include mdc-fab-ink-color(on-primary, $query: $mat-theme-styles-query); |
174 | 191 | @include _mat-button-ripple-ink-color(on-primary); |
175 | 192 | } |
176 | 193 |
|
177 | 194 | &.mat-accent { |
178 | | - @include mdc-states-base-color(on-secondary, $query: $mat-theme-styles-query); |
| 195 | + @include mdc-states-base-color( |
| 196 | + on-secondary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
179 | 197 | @include mdc-fab-container-color(secondary, $query: $mat-theme-styles-query); |
180 | 198 | @include mdc-fab-ink-color(on-secondary, $query: $mat-theme-styles-query); |
181 | 199 | @include _mat-button-ripple-ink-color(on-secondary); |
182 | 200 | } |
183 | 201 |
|
184 | 202 | &.mat-warn { |
185 | | - @include mdc-states-base-color(on-error, $query: $mat-theme-styles-query); |
| 203 | + @include mdc-states-base-color( |
| 204 | + on-error, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
186 | 205 | @include mdc-fab-container-color(error, $query: $mat-theme-styles-query); |
187 | 206 | @include mdc-fab-ink-color(on-error, $query: $mat-theme-styles-query); |
188 | 207 | @include _mat-button-ripple-ink-color(on-error); |
|
211 | 230 | @include mdc-states($query: $mat-theme-styles-query); |
212 | 231 |
|
213 | 232 | &.mat-unthemed { |
214 | | - @include mdc-states-base-color($mdc-theme-surface, $query: $mat-theme-styles-query); |
| 233 | + @include mdc-states-base-color( |
| 234 | + $mdc-theme-surface, $query: $mat-theme-styles-query, |
| 235 | + $ripple-target: $mat-button-state-target); |
215 | 236 | @include mdc-icon-button-ink-color($mdc-theme-on-surface, $query: $mat-theme-styles-query); |
216 | 237 | } |
217 | 238 |
|
218 | 239 | &.mat-primary { |
219 | | - @include mdc-states-base-color(primary, $query: $mat-theme-styles-query); |
| 240 | + @include mdc-states-base-color( |
| 241 | + primary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
220 | 242 | @include mdc-icon-button-ink-color(primary, $query: $mat-theme-styles-query); |
221 | 243 | @include _mat-button-ripple-ink-color(primary); |
222 | 244 | } |
223 | 245 |
|
224 | 246 | &.mat-accent { |
225 | | - @include mdc-states-base-color(secondary, $query: $mat-theme-styles-query); |
| 247 | + @include mdc-states-base-color( |
| 248 | + secondary, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
226 | 249 | @include mdc-icon-button-ink-color(secondary, $query: $mat-theme-styles-query); |
227 | 250 | @include _mat-button-ripple-ink-color(secondary); |
228 | 251 | } |
229 | 252 |
|
230 | 253 | &.mat-warn { |
231 | | - @include mdc-states-base-color(error, $query: $mat-theme-styles-query); |
| 254 | + @include mdc-states-base-color( |
| 255 | + error, $query: $mat-theme-styles-query, $ripple-target: $mat-button-state-target); |
232 | 256 | @include mdc-icon-button-ink-color(error, $query: $mat-theme-styles-query); |
233 | 257 | @include _mat-button-ripple-ink-color(error); |
234 | 258 | } |
|
0 commit comments