Skip to content

Commit d264e8e

Browse files
authored
Button and ActionButton design updates (#3650)
1 parent c604e69 commit d264e8e

File tree

10 files changed

+622
-1082
lines changed

10 files changed

+622
-1082
lines changed

packages/@adobe/spectrum-css-temp/components/actiongroup/index.css

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,17 +99,29 @@ governing permissions and limitations under the License.
9999

100100
.spectrum-ActionGroup-item {
101101
position: relative;
102-
border-radius: 0;
102+
--spectrum-button-border-radius: 0px;
103103
z-index: 1;
104104

105105
&:first-child {
106106
border-start-start-radius: var(--spectrum-actionbutton-border-radius);
107107
border-end-start-radius: var(--spectrum-actionbutton-border-radius);
108+
109+
/* focus ring */
110+
&:after {
111+
border-start-start-radius: calc(var(--spectrum-actionbutton-border-radius) + var(--spectrum-alias-focus-ring-gap));
112+
border-end-start-radius: calc(var(--spectrum-actionbutton-border-radius) + var(--spectrum-alias-focus-ring-gap));
113+
}
108114
}
109115

110116
&:last-child {
111117
border-start-end-radius: var(--spectrum-actionbutton-border-radius);
112118
border-end-end-radius: var(--spectrum-actionbutton-border-radius);
119+
120+
/* focus ring */
121+
&:after {
122+
border-start-end-radius: calc(var(--spectrum-actionbutton-border-radius) + var(--spectrum-alias-focus-ring-gap));
123+
border-end-end-radius: calc(var(--spectrum-actionbutton-border-radius) + var(--spectrum-alias-focus-ring-gap));
124+
}
113125
}
114126

115127
&.spectrum-ActionGroup-item--isDisabled {

packages/@adobe/spectrum-css-temp/components/button/index.css

Lines changed: 14 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ governing permissions and limitations under the License.
4141
margin: 0;
4242

4343
border-style: solid;
44+
border-radius: var(--spectrum-button-border-radius);
45+
border-width: var(--spectrum-button-border-width);
4446

4547
/* Remove the inheritance of text transform on button in Edge, Firefox, and IE. */
4648
text-transform: none;
@@ -113,8 +115,8 @@ governing permissions and limitations under the License.
113115
}
114116

115117
%spectrum-ButtonWithFocusRing {
116-
&:after {
117-
border-radius: calc(var(--spectrum-button-primary-border-radius) + var(--spectrum-alias-focus-ring-gap));
118+
&:after {
119+
border-radius: calc(var(--spectrum-button-border-radius) + var(--spectrum-alias-focus-ring-gap));
118120
content: '';
119121
display: block;
120122
position: absolute;
@@ -131,7 +133,7 @@ governing permissions and limitations under the License.
131133

132134
&:focus-ring {
133135
&:after {
134-
margin: calc(var(--spectrum-alias-focus-ring-gap) * -2);
136+
margin: calc(var(--spectrum-alias-focus-ring-gap) * -1 - var(--spectrum-button-border-width));
135137
}
136138
}
137139
}
@@ -140,9 +142,9 @@ governing permissions and limitations under the License.
140142
@inherit: %spectrum-BaseButton;
141143
@inherit: %spectrum-ButtonWithFocusRing;
142144

143-
border-width: var(--spectrum-button-primary-border-size);
144145
border-style: solid;
145-
border-radius: var(--spectrum-button-primary-border-radius);
146+
--spectrum-button-border-radius: var(--spectrum-button-primary-border-radius);
147+
--spectrum-button-border-width: var(--spectrum-button-primary-border-size);
146148

147149
min-block-size: var(--spectrum-button-primary-height);
148150
block-size: 0%;
@@ -188,6 +190,7 @@ a.spectrum-ActionButton {
188190

189191
.spectrum-ActionButton {
190192
@inherit: %spectrum-BaseButton;
193+
@inherit: %spectrum-ButtonWithFocusRing;
191194
position: relative;
192195

193196
block-size: var(--spectrum-actionbutton-height);
@@ -196,8 +199,8 @@ a.spectrum-ActionButton {
196199
/* Use icon padding by default as it's smaller */
197200
padding: 0;
198201

199-
border-width: var(--spectrum-actionbutton-border-size);
200-
border-radius: var(--spectrum-actionbutton-border-radius);
202+
--spectrum-button-border-radius: var(--spectrum-actionbutton-border-radius);
203+
--spectrum-button-border-width: var(--spectrum-actionbutton-border-size);
201204

202205
font-size: var(--spectrum-actionbutton-text-size);
203206
font-weight: var(--spectrum-actionbutton-text-font-weight);
@@ -276,41 +279,19 @@ a.spectrum-ActionButton {
276279
font-weight: var(--spectrum-actionbutton-quiet-text-font-weight);
277280
}
278281

279-
.spectrum-ActionButton--emphasized,
280-
.spectrum-ActionButton--staticColor {
281-
@inherit: %spectrum-ButtonWithFocusRing;
282-
283-
&:after {
284-
/* Override border-radius set in %spectrum-ButtonWithFocusRing since this is not a pill button */
285-
border-radius: calc(var(--spectrum-actionbutton-border-radius) + var(--spectrum-alias-focus-ring-gap));
286-
}
287-
288-
&:focus-ring {
289-
&:after {
290-
/* action buttons only have a 1px border, not 2px */
291-
margin: calc(calc(var(--spectrum-alias-focus-ring-gap) * -1) - var(--spectrum-actionbutton-quiet-border-size));
292-
}
293-
}
294-
}
295-
296282
.spectrum-LogicButton {
297283
@inherit: %spectrum-BaseButton;
298284
@inherit: %spectrum-ButtonWithFocusRing;
299285

300286
block-size: var(--spectrum-logicbutton-and-height);
301287
padding: var(--spectrum-logicbutton-and-padding-x);
302288

303-
border-width: var(--spectrum-logicbutton-and-border-size);
304-
border-radius: var(--spectrum-logicbutton-and-border-radius);
289+
--spectrum-button-border-width: var(--spectrum-logicbutton-and-border-size);
290+
--spectrum-button-border-radius: var(--spectrum-logicbutton-and-border-radius);
305291

306292
font-size: var(--spectrum-logicbutton-and-text-size);
307293
font-weight: var(--spectrum-logicbutton-and-text-font-weight);
308294
line-height: 0;
309-
310-
&:after {
311-
/* Override border-radius set in %spectrum-ButtonWithFocusRing since this is not a pill button */
312-
border-radius: calc(var(--spectrum-logicbutton-and-border-radius) + var(--spectrum-alias-focus-ring-gap));
313-
}
314295
}
315296

316297
.spectrum-FieldButton {
@@ -375,7 +356,8 @@ a.spectrum-ActionButton {
375356
inline-size: var(--spectrum-clearbutton-medium-width);
376357
block-size: var(--spectrum-clearbutton-medium-height);
377358

378-
border-radius: 100%;
359+
--spectrum-button-border-radius: 100%;
360+
--spectrum-button-border-width: 0px;
379361

380362
padding: 0;
381363
margin: 0;
@@ -389,15 +371,6 @@ a.spectrum-ActionButton {
389371
}
390372
}
391373

392-
.spectrum-ClearButton--overBackground {
393-
&:focus-ring {
394-
&:after {
395-
/* Adjust margin because ClearButton does not have a border */
396-
margin: calc(var(--spectrum-alias-focus-ring-gap) * -1);
397-
}
398-
}
399-
}
400-
401374
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
402375
.spectrum-ClearButton {
403376
> .spectrum-Icon {

0 commit comments

Comments
 (0)