|
11 | 11 | * governing permissions and limitations under the License. |
12 | 12 | */ |
13 | 13 |
|
14 | | -@media (forced-colors: active) { |
15 | | - .spectrum-ActionButton { |
16 | | - /* force a more visible focus indicator color */ |
17 | | - --highcontrast-actionbutton-focus-indicator-color: ButtonText; |
18 | | - |
19 | | - &::after { |
20 | | - /* make sure focus indicator renders */ |
21 | | - forced-color-adjust: none; |
22 | | - } |
23 | | - |
24 | | - &.is-selected { |
25 | | - --highcontrast-actionbutton-background-color-default: Highlight; |
26 | | - --highcontrast-actionbutton-background-color-hover: Highlight; |
27 | | - --highcontrast-actionbutton-background-color-focus: Highlight; |
28 | | - --highcontrast-actionbutton-background-color-down: Highlight; |
29 | | - --highcontrast-actionbutton-background-color-disabled: ButtonFace; |
30 | | - |
31 | | - --highcontrast-actionbutton-border-color-default: HighlightText; |
32 | | - --highcontrast-actionbutton-border-color-hover: HighlightText; |
33 | | - --highcontrast-actionbutton-border-color-focus: HighlightText; |
34 | | - --highcontrast-actionbutton-border-color-down: HighlightText; |
35 | | - --highcontrast-actionbutton-border-color-disabled: GrayText; |
36 | | - |
37 | | - --highcontrast-actionbutton-content-color-default: HighlightText; |
38 | | - --highcontrast-actionbutton-content-color-hover: HighlightText; |
39 | | - --highcontrast-actionbutton-content-color-focus: HighlightText; |
40 | | - --highcontrast-actionbutton-content-color-down: HighlightText; |
41 | | - --highcontrast-actionbutton-content-color-disabled: GrayText; |
42 | | - |
43 | | - .spectrum-ActionButton-icon, |
44 | | - .spectrum-ActionButton-hold, |
45 | | - .spectrum-ActionButton-label { |
46 | | - /* ensure custom text colors from above get applied */ |
47 | | - /* it seems like this shouldn't have to be done, but colors are wrong without it */ |
48 | | - forced-color-adjust: none; |
49 | | - } |
50 | | - } |
51 | | - } |
52 | | -} |
53 | | - |
54 | 14 | .spectrum-ActionButton { |
55 | 15 | --spectrum-actionbutton-background-color-default: var(--highcontrast-actionbutton-background-color-default, var(--mod-actionbutton-background-color-default, var(--spectrum-gray-50))); |
56 | 16 | --spectrum-actionbutton-background-color-hover: var(--highcontrast-actionbutton-background-color-hover, var(--mod-actionbutton-background-color-hover, var(--spectrum-gray-100))); |
|
69 | 29 | --spectrum-actionbutton-border-color-focus: var(--highcontrast-actionbutton-border-color-focus, var(--mod-actionbutton-border-color-focus, var(--spectrum-gray-500))); |
70 | 30 | --spectrum-actionbutton-border-color-disabled: var(--spectrum-disabled-border-color); |
71 | 31 |
|
72 | | - --spectrum-actionbutton-content-color-selected: var(--spectrum-gray-50); |
| 32 | + --spectrum-actionbutton-content-color-selected: var(--spectrum-gray-25); |
| 33 | + --spectrum-actionbutton-content-color-disabled: var(--mod-disabled-content-color, var(--spectrum-disabled-content-color)); |
| 34 | + --spectrum-actionbutton-background-color-disabled: var(--mod-disabled-background-color, var(--spectrum-disabled-background-color)); |
73 | 35 |
|
74 | 36 | --spectrum-actionbutton-animation-duration: var(--mod-actionbutton-animation-duration, var(--spectrum-animation-duration-100)); |
75 | 37 | --spectrum-actionbutton-border-radius: var(--mod-actionbutton-border-radius, var(--spectrum-corner-radius-medium-size-medium)); |
|
101 | 63 | } |
102 | 64 |
|
103 | 65 | &.spectrum-ActionButton--quiet { |
| 66 | + --mod-actionbutton-border-color-default: transparent; |
| 67 | + |
104 | 68 | --mod-actionbutton-background-color-default: transparent; |
105 | 69 | --mod-actionbutton-background-color-hover: var(--spectrum-gray-100); |
106 | 70 | --mod-actionbutton-background-color-down: var(--spectrum-gray-200); |
107 | 71 | --mod-actionbutton-background-color-focus: var(--spectrum-gray-100); |
| 72 | + |
| 73 | + &:disabled:not(.is-selected), |
| 74 | + &.is-disabled:not(.is-selected) { |
| 75 | + --mod-actionbutton-border-color-disabled: transparent; |
| 76 | + --mod-actionbutton-background-color-disabled: transparent; |
| 77 | + } |
108 | 78 | } |
109 | 79 |
|
110 | 80 | &.spectrum-ActionButton--staticBlack { |
| 81 | + --mod-actionbutton-background-color-default: transparent; |
| 82 | + |
111 | 83 | --mod-actionbutton-border-color-default: var(--spectrum-transparent-black-500); |
112 | 84 | --mod-actionbutton-border-color-hover: var(--spectrum-transparent-black-600); |
113 | 85 | --mod-actionbutton-border-color-down: var(--spectrum-transparent-black-700); |
114 | 86 | --mod-actionbutton-border-color-focus: var(--spectrum-transparent-black-600); |
| 87 | + |
| 88 | + --mod-actionbutton-focus-indicator-color: var(--spectrum-static-black-focus-indicator-color); |
115 | 89 |
|
116 | 90 | --spectrum-actionbutton-background-color-disabled: transparent; |
117 | 91 | --spectrum-actionbutton-background-color-selected-disabled: var(--spectrum-transparent-black-200); |
| 92 | + |
| 93 | + &:disabled, |
| 94 | + .is-disabled { |
| 95 | + --mod-disabled-content-color: var(--spectrum-transparent-black-500); |
| 96 | + --mod-actionbutton-border-color-disabled: var(--spectrum-transparent-black-500); |
| 97 | + } |
118 | 98 |
|
119 | | - &, |
120 | 99 | &.spectrum-ActionButton--quiet { |
121 | | - --mod-actionbutton-background-color-default: transparent; |
122 | | - --mod-actionbutton-background-color-hover: var(--spectrum-transparent-black-400); |
123 | | - --mod-actionbutton-background-color-down: var(--spectrum-transparent-black-500); |
124 | | - --mod-actionbutton-background-color-focus: var(--spectrum-transparent-black-400); |
| 100 | + --mod-actionbutton-border-color-default: transparent; |
125 | 101 | } |
126 | 102 | } |
127 | 103 |
|
128 | 104 | &.spectrum-ActionButton--staticWhite { |
| 105 | + --mod-actionbutton-background-color-default: transparent; |
| 106 | + |
129 | 107 | --mod-actionbutton-border-color-default: var(--spectrum-transparent-white-500); |
130 | 108 | --mod-actionbutton-border-color-hover: var(--spectrum-transparent-white-600); |
131 | 109 | --mod-actionbutton-border-color-down: var(--spectrum-transparent-white-700); |
132 | 110 | --mod-actionbutton-border-color-focus: var(--spectrum-transparent-white-600); |
| 111 | + |
| 112 | + --mod-actionbutton-focus-indicator-color: var(--spectrum-static-white-focus-indicator-color); |
133 | 113 |
|
134 | 114 | --spectrum-actionbutton-background-color-disabled: transparent; |
135 | 115 | --spectrum-actionbutton-background-color-selected-disabled: var(--spectrum-transparent-white-200); |
| 116 | + |
| 117 | + &:disabled, |
| 118 | + .is-disabled { |
| 119 | + --mod-disabled-content-color: var(--spectrum-transparent-white-500); |
| 120 | + --mod-actionbutton-border-color-disabled: var(--spectrum-transparent-white-500); |
| 121 | + } |
136 | 122 |
|
137 | | - &, |
138 | 123 | &.spectrum-ActionButton--quiet { |
139 | | - --mod-actionbutton-background-color-default: transparent; |
140 | | - --mod-actionbutton-background-color-hover: var(--spectrum-transparent-white-400); |
141 | | - --mod-actionbutton-background-color-down: var(--spectrum-transparent-white-500); |
142 | | - --mod-actionbutton-background-color-focus: var(--spectrum-transparent-white-400); |
| 124 | + --mod-actionbutton-border-color-default: transparent; |
143 | 125 | } |
144 | 126 | } |
145 | 127 |
|
146 | 128 | &.is-selected { |
147 | | - --mod-actionbutton-background-color-default: var(--mod-actionbutton-background-color-default-selected, var(--spectrum-neutral-background-color-selected-default)); |
148 | | - --mod-actionbutton-background-color-hover: var(--mod-actionbutton-background-color-hover-selected, var(--spectrum-neutral-background-color-selected-hover)); |
149 | | - --mod-actionbutton-background-color-down: var(--mod-actionbutton-background-color-down-selected, var(--spectrum-neutral-background-color-selected-down)); |
150 | | - --mod-actionbutton-background-color-focus: var(--mod-actionbutton-background-color-focus-selected, var(--spectrum-neutral-background-color-selected-key-focus)); |
151 | | - |
152 | | - --mod-actionbutton-content-color-default: var(--mod-actionbutton-content-color-default-selected, var(--spectrum-gray-25)); |
153 | | - --mod-actionbutton-content-color-hover: var(--mod-actionbutton-content-color-hover-selected, var(--spectrum-gray-25)); |
154 | | - --mod-actionbutton-content-color-down: var(--mod-actionbutton-content-color-down-selected, var(--spectrum-gray-25)); |
155 | | - --mod-actionbutton-content-color-focus: var(--mod-actionbutton-content-color-focus-selected, var(--spectrum-gray-25)); |
156 | | - |
157 | | - &.spectrum-ActionButton--emphasized { |
158 | | - --mod-actionbutton-background-color-default: var(--mod-actionbutton-background-color-default-selected-emphasized, var(--spectrum-accent-background-color-default)); |
159 | | - --mod-actionbutton-background-color-hover: var(--mod-actionbutton-background-color-hover-selected-emphasized, var(--spectrum-accent-background-color-hover)); |
160 | | - --mod-actionbutton-background-color-down: var(--mod-actionbutton-background-color-down-selected-emphasized, var(--spectrum-accent-background-color-down)); |
161 | | - --mod-actionbutton-background-color-focus: var(--mod-actionbutton-background-color-focus-selected-emphasized, var(--spectrum-accent-background-color-key-focus)); |
162 | | - |
163 | | - --mod-actionbutton-content-color-default: var(--mod-actionbutton-content-color-default-selected-emphasized, var(--spectrum-white)); |
164 | | - --mod-actionbutton-content-color-hover: var(--mod-actionbutton-content-color-hover-selected-emphasized, var(--spectrum-white)); |
165 | | - --mod-actionbutton-content-color-down: var(--mod-actionbutton-content-color-down-selected-emphasized, var(--spectrum-white)); |
166 | | - --mod-actionbutton-content-color-focus: var(--mod-actionbutton-content-color-focus-selected-emphasized, var(--spectrum-white)); |
| 129 | + --mod-actionbutton-background-color-default: var(--spectrum-actionbutton-background-color-selected); |
| 130 | + --mod-actionbutton-background-color-hover: var(--spectrum-actionbutton-background-color-selected-hover); |
| 131 | + --mod-actionbutton-background-color-down: var(--spectrum-actionbutton-background-color-selected-down); |
| 132 | + --mod-actionbutton-background-color-focus: var(--spectrum-actionbutton-background-color-selected-focus); |
| 133 | + --mod-actionbutton-background-color-disabled: var(--spectrum-actionbutton-background-color-selected-disabled); |
| 134 | + |
| 135 | + --mod-actionbutton-border-color-default: transparent; |
| 136 | + --mod-actionbutton-border-color-hover: transparent; |
| 137 | + --mod-actionbutton-border-color-down: transparent; |
| 138 | + --mod-actionbutton-border-color-focus: transparent; |
| 139 | + --mod-actionbutton-border-color-disabled: transparent; |
| 140 | + |
| 141 | + --mod-actionbutton-content-color-default: var(--spectrum-actionbutton-content-color-selected); |
| 142 | + --mod-actionbutton-content-color-hover: var(--spectrum-actionbutton-content-color-selected); |
| 143 | + --mod-actionbutton-content-color-down: var(--spectrum-actionbutton-content-color-selected); |
| 144 | + --mod-actionbutton-content-color-focus: var(--spectrum-actionbutton-content-color-selected); |
| 145 | + |
| 146 | + &.spectrum-ActionButton--emphasized:not(.spectrum-ActionButton--staticBlack, .spectrum-ActionButton--staticWhite) { |
| 147 | + --mod-actionbutton-background-color-default: var(--spectrum-accent-background-color-default); |
| 148 | + --mod-actionbutton-background-color-hover: var(--spectrum-accent-background-color-hover); |
| 149 | + --mod-actionbutton-background-color-down: var(--spectrum-accent-background-color-down); |
| 150 | + --mod-actionbutton-background-color-focus: var(--spectrum-accent-background-color-key-focus); |
| 151 | + |
| 152 | + --mod-actionbutton-content-color-default: var(--spectrum-white); |
| 153 | + --mod-actionbutton-content-color-hover: var(--spectrum-white); |
| 154 | + --mod-actionbutton-content-color-down: var(--spectrum-white); |
| 155 | + --mod-actionbutton-content-color-focus: var(--spectrum-white); |
| 156 | + } |
| 157 | + |
| 158 | + &:disabled, |
| 159 | + .is-disabled { |
| 160 | + &.spectrum-ActionButton--staticBlack { |
| 161 | + --mod-disabled-content-color: var(--spectrum-transparent-black-500); |
| 162 | + --mod-disabled-background-color: var(--spectrum-transparent-black-100); |
| 163 | + } |
| 164 | + |
| 165 | + &.spectrum-ActionButton--staticWhite { |
| 166 | + --mod-disabled-content-color: var(--spectrum-transparent-white-500); |
| 167 | + --mod-disabled-background-color: var(--spectrum-transparent-white-100); |
| 168 | + } |
167 | 169 | } |
168 | 170 | } |
169 | 171 | } |
|
266 | 268 |
|
267 | 269 | /* stylelint-disable-next-line property-no-vendor-prefix -- Correct the inability to style clickable types in iOS and Safari (normalize). */ |
268 | 270 | -webkit-appearance: button; |
| 271 | + |
| 272 | + border-style: solid; |
269 | 273 |
|
270 | 274 | transition: |
271 | 275 | background var(--mod-button-animation-duration, var(--spectrum-animation-duration-100)) ease-out, |
@@ -410,3 +414,43 @@ a.spectrum-ActionButton { |
410 | 414 | /* Augment the margin correction for the icon only scenario */ |
411 | 415 | margin-inline-start: calc(var(--spectrum-actionbutton-edge-to-visual-only) - var(--spectrum-actionbutton-edge-to-text)); |
412 | 416 | } |
| 417 | + |
| 418 | +@media (forced-colors: active) { |
| 419 | + .spectrum-ActionButton { |
| 420 | + /* force a more visible focus indicator color */ |
| 421 | + --highcontrast-actionbutton-focus-indicator-color: ButtonText; |
| 422 | + |
| 423 | + &::after { |
| 424 | + /* make sure focus indicator renders */ |
| 425 | + forced-color-adjust: none; |
| 426 | + } |
| 427 | + |
| 428 | + &.is-selected { |
| 429 | + --highcontrast-actionbutton-background-color-default: Highlight; |
| 430 | + --highcontrast-actionbutton-background-color-hover: Highlight; |
| 431 | + --highcontrast-actionbutton-background-color-focus: Highlight; |
| 432 | + --highcontrast-actionbutton-background-color-down: Highlight; |
| 433 | + --highcontrast-actionbutton-background-color-disabled: ButtonFace; |
| 434 | + |
| 435 | + --highcontrast-actionbutton-border-color-default: HighlightText; |
| 436 | + --highcontrast-actionbutton-border-color-hover: HighlightText; |
| 437 | + --highcontrast-actionbutton-border-color-focus: HighlightText; |
| 438 | + --highcontrast-actionbutton-border-color-down: HighlightText; |
| 439 | + --highcontrast-actionbutton-border-color-disabled: GrayText; |
| 440 | + |
| 441 | + --highcontrast-actionbutton-content-color-default: HighlightText; |
| 442 | + --highcontrast-actionbutton-content-color-hover: HighlightText; |
| 443 | + --highcontrast-actionbutton-content-color-focus: HighlightText; |
| 444 | + --highcontrast-actionbutton-content-color-down: HighlightText; |
| 445 | + --highcontrast-actionbutton-content-color-disabled: GrayText; |
| 446 | + |
| 447 | + .spectrum-ActionButton-icon, |
| 448 | + .spectrum-ActionButton-hold, |
| 449 | + .spectrum-ActionButton-label { |
| 450 | + /* ensure custom text colors from above get applied */ |
| 451 | + /* it seems like this shouldn't have to be done, but colors are wrong without it */ |
| 452 | + forced-color-adjust: none; |
| 453 | + } |
| 454 | + } |
| 455 | + } |
| 456 | +} |
0 commit comments