@@ -15,19 +15,19 @@ governing permissions and limitations under the License.
15
15
16
16
.spectrum-Tooltip {
17
17
--spectrum-tooltip-animation-duration : var (--spectrum-animation-duration-100 );
18
+ --spectrum-tooltip-animation-distance : var (--spectrum-spacing-75 );
18
19
19
20
/* override if additional spacing to source is required */
20
21
--spectrum-tooltip-margin : 0px ;
21
22
22
23
--spectrum-tooltip-height : var (--spectrum-component-height-75 );
23
24
--spectrum-tooltip-max-inline-size : var (--spectrum-tooltip-maximum-width );
24
- --spectrum-tooltip-border-radius : var (--spectrum-corner-radius-100 );
25
-
26
- --spectrum-tooltip-icon-width : var (--spectrum-workflow-icon-size-50 );
27
- --spectrum-tooltip-icon-height : var (--spectrum-workflow-icon-size-50 );
25
+ --spectrum-tooltip-border-radius : var (--spectrum-corner-radius-400 );
28
26
29
27
--spectrum-tooltip-font-size : var (--spectrum-font-size-75 );
30
- --spectrum-tooltip-line-height : var (--spectrum-line-height-100 );
28
+
29
+ /* @todo set line-height using font size specific line-height tokens when they are finalized along with the new variable font. */
30
+ --spectrum-tooltip-line-height : 1.2 ;
31
31
--spectrum-tooltip-cjk-line-height : var (--spectrum-cjk-line-height-100 );
32
32
--spectrum-tooltip-font-weight : var (--spectrum-regular-font-weight );
33
33
@@ -38,50 +38,22 @@ governing permissions and limitations under the License.
38
38
--spectrum-tooltip-spacing-block-start : var (--spectrum-component-top-to-text-75 );
39
39
--spectrum-tooltip-spacing-block-end : var (--spectrum-component-bottom-to-text-75 );
40
40
41
- /* icon spacing */
42
- --spectrum-tooltip-icon-spacing-inline-start : var (--spectrum-text-to-visual-75 );
43
- --spectrum-tooltip-icon-spacing-inline-end : var (--spectrum-text-to-visual-75 );
44
- --spectrum-tooltip-icon-spacing-block-start : var (--spectrum-component-top-to-workflow-icon-75 );
45
-
46
- /* colors */
47
- --spectrum-tooltip-background-color-informative : var (--spectrum-informative-background-color-default );
48
- --spectrum-tooltip-background-color-positive : var (--spectrum-positive-background-color-default );
49
- --spectrum-tooltip-background-color-negative : var (--spectrum-negative-background-color-default );
50
-
51
- --spectrum-tooltip-content-color : var (--spectrum-white );
41
+ --spectrum-tooltip-content-color : var (--spectrum-gray-25 );
42
+ --spectrum-tooltip-background-color-default : var (--spectrum-neutral-background-color-default );
52
43
53
44
/* tip */
54
- --spectrum-tooltip-tip-inline-size : var (--spectrum-tooltip-tip-width );
55
45
--spectrum-tooltip-tip-block-size : var (--spectrum-tooltip-tip-height );
56
46
57
- /* Width and height of square element used to render the tip triangle. */
58
- --spectrum-tooltip-tip-square-size : var (--spectrum-tooltip-tip-inline-size );
59
-
60
47
/* Percentage value of height divided by width, for calculating clip-path within a square tip. */
61
- --spectrum-tooltip-tip-height-percentage : 50 % ;
48
+ --spectrum-tooltip-tip-height-percentage : 100 % ;
62
49
63
50
/* Tip inset from container edges for clip-paths calculation, to fix hairline gap in Chrome cause by antialiasing. */
64
51
--spectrum-tooltip-tip-antialiasing-inset : 0.5px ;
65
52
66
53
/* pointer tip - default spacing to edge - corner radius plus half of tip width to neutralize override */
67
- --spectrum-tooltip-pointer-corner-spacing : var (--spectrum-corner- radius-100 );
54
+ --spectrum-tooltip-pointer-corner-spacing : var (--mod-tooltip-border- radius , var ( --spectrum-tooltip-border-radius ) );
68
55
69
- /* neutral background changes per theme */
70
- --spectrum-tooltip-background-color-default : var (--spectrum-tooltip-backgound-color-default-neutral );
71
- }
72
-
73
- @media (forced-colors : active) {
74
- .spectrum-Tooltip {
75
- border : 1px solid transparent;
76
- }
77
-
78
- .spectrum-Tooltip-tip {
79
- forced-color-adjust : none;
80
- --highcontrast-tooltip-background-color-default : CanvasText;
81
- --highcontrast-tooltip-background-color-informative : CanvasText;
82
- --highcontrast-tooltip-background-color-positive : CanvasText;
83
- --highcontrast-tooltip-background-color-negative : CanvasText;
84
- }
56
+ --highcontrast-tooltip-border-width : 0px ;
85
57
}
86
58
87
59
.spectrum-Tooltip {
@@ -129,19 +101,6 @@ governing permissions and limitations under the License.
129
101
}
130
102
}
131
103
132
- /****** Variants ******/
133
- .spectrum-Tooltip--info {
134
- background-color : var (--highcontrast-tooltip-background-color-informative , var (--mod-tooltip-background-color-informative , var (--spectrum-tooltip-background-color-informative )));
135
- }
136
-
137
- .spectrum-Tooltip--positive {
138
- background-color : var (--highcontrast-tooltip-background-color-positive , var (--mod-tooltip-background-color-positive , var (--spectrum-tooltip-background-color-positive )));
139
- }
140
-
141
- .spectrum-Tooltip--negative {
142
- background-color : var (--highcontrast-tooltip-background-color-negative , var (--mod-tooltip-background-color-negative , var (--spectrum-tooltip-background-color-negative )));
143
- }
144
-
145
104
.spectrum-Tooltip .is-open {
146
105
@extend %spectrum- overlay- - open;
147
106
}
@@ -153,27 +112,17 @@ governing permissions and limitations under the License.
153
112
block-size : var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ));
154
113
inline-size : var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ));
155
114
156
- inset-block-start : 100% ;
115
+ inset-block-start : calc ( 100% - ( 0.5 * var ( --mod-tooltip-tip-square-size , var ( --spectrum-tooltip-tip-square-size ))) - var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset )) + var ( --highcontrast-tooltip-border-width )) ;
157
116
/* stylelint-disable-next-line csstools/use-logical -- intentional use of non-logical property */
158
- left : 50% ;
159
- transform : translateX ( -50 % );
117
+ left : calc ( 50% - ( 0.5 * var ( --mod-tooltip-tip-square-size , var ( --spectrum-tooltip-tip-square-size )))) ;
118
+ transform : rotate ( -45 deg );
160
119
161
120
background-color : var (--highcontrast-tooltip-background-color-default , var (--mod-tooltip-background-color-default , var (--spectrum-tooltip-background-color-default )));
162
121
163
122
/* Default: Pointing down ▽ */
164
- clip-path : polygon (0 calc (0% - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))), 50% var (--mod-tooltip-tip-height-percentage , var (--spectrum-tooltip-tip-height-percentage )), 100% calc (0% - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))));
165
-
166
- .spectrum-Tooltip--info & {
167
- background-color : var (--highcontrast-tooltip-background-color-informative , var (--mod-tooltip-background-color-informative , var (--spectrum-tooltip-background-color-informative )));
168
- }
123
+ clip-path : polygon (0 0 , 100% var (--mod-tooltip-tip-height-percentage , var (--spectrum-tooltip-tip-height-percentage )), 0 100% );
169
124
170
- .spectrum-Tooltip--positive & {
171
- background-color : var (--highcontrast-tooltip-background-color-positive , var (--mod-tooltip-background-color-positive , var (--spectrum-tooltip-background-color-positive )));
172
- }
173
-
174
- .spectrum-Tooltip--negative & {
175
- background-color : var (--highcontrast-tooltip-background-color-negative , var (--mod-tooltip-background-color-negative , var (--spectrum-tooltip-background-color-negative )));
176
- }
125
+ border-radius : 0 0 0 var (--mod-tooltip-tip-corner-radius , var (--spectrum-tooltip-tip-corner-radius ));
177
126
178
127
/*** Tip Placement ***/
179
128
/* tip is horizontal at bottom pointing down ▽ */
@@ -182,7 +131,8 @@ governing permissions and limitations under the License.
182
131
.spectrum-Tooltip--top-right & ,
183
132
.spectrum-Tooltip--top-start & ,
184
133
.spectrum-Tooltip--top-end & {
185
- inset-block-start : 100% ;
134
+ inset-block-start : calc (100% - (0.5 * var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ))) - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset )) + var (--highcontrast-tooltip-border-width ));
135
+ transform : rotate (-45deg );
186
136
}
187
137
188
138
/* tip is horizontal at top pointing up △ */
@@ -191,20 +141,8 @@ governing permissions and limitations under the License.
191
141
.spectrum-Tooltip--bottom-right & ,
192
142
.spectrum-Tooltip--bottom-start & ,
193
143
.spectrum-Tooltip--bottom-end & {
194
- clip-path : polygon (50% calc (100% - var (--mod-tooltip-tip-height-percentage , var (--spectrum-tooltip-tip-height-percentage ))), 0 calc (100% + var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))), 100% calc (100% + var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))));
195
- inset-block : auto 100% ;
196
- }
197
-
198
- /* tip is horizontal and at the edge */
199
- .spectrum-Tooltip--top-left & ,
200
- .spectrum-Tooltip--bottom-left & ,
201
- .spectrum-Tooltip--top-right & ,
202
- .spectrum-Tooltip--bottom-right & ,
203
- .spectrum-Tooltip--top-start & ,
204
- .spectrum-Tooltip--bottom-start & ,
205
- .spectrum-Tooltip--top-end & ,
206
- .spectrum-Tooltip--bottom-end & {
207
- transform : none;
144
+ inset-block : auto calc (100% - (0.5 * var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ))) - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset )) + var (--highcontrast-tooltip-border-width ));
145
+ transform : rotate (135deg );
208
146
}
209
147
210
148
/* tip is horizontal at left △ ▽ */
@@ -254,8 +192,7 @@ governing permissions and limitations under the License.
254
192
.spectrum-Tooltip--end & ,
255
193
.spectrum-Tooltip--end-top & ,
256
194
.spectrum-Tooltip--end-bottom & {
257
- inset-block-start : 50% ;
258
- transform : translateY (-50% );
195
+ inset-block-start : calc (50% - (0.5 * var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ))));
259
196
}
260
197
261
198
/* tip is vertical and at edge */
@@ -267,7 +204,6 @@ governing permissions and limitations under the License.
267
204
.spectrum-Tooltip--start-bottom & ,
268
205
.spectrum-Tooltip--end-top & ,
269
206
.spectrum-Tooltip--end-bottom & {
270
- transform : none;
271
207
inset-block-start : auto;
272
208
}
273
209
@@ -278,8 +214,8 @@ governing permissions and limitations under the License.
278
214
.spectrum-Tooltip--end & ,
279
215
.spectrum-Tooltip--end-top & ,
280
216
.spectrum-Tooltip--end-bottom & {
281
- clip-path : polygon ( calc (100% - var (--mod-tooltip-tip-height-percentage , var (--spectrum-tooltip-tip-height-percentage ))) 50 % , calc ( 100 % + var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))) 100 % , calc ( 100 % + var (--mod -tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset ))) 0 );
282
- inset-inline : auto 100 % ;
217
+ inset-inline : auto calc (100% - ( 0.5 * var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ))) - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset )) + var (--highcontrast -tooltip-border-width ) );
218
+ transform : rotate ( 45 deg ) ;
283
219
}
284
220
285
221
/* tip is vertical pointing ▷ right or end, for LTR. */
@@ -289,8 +225,8 @@ governing permissions and limitations under the License.
289
225
.spectrum-Tooltip--start & ,
290
226
.spectrum-Tooltip--start-top & ,
291
227
.spectrum-Tooltip--start-bottom & {
292
- clip-path : polygon ( calc (0 % - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))) 0 , calc ( 0 % - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset ))) 100 % , var (--mod -tooltip-tip-height-percentage , var ( --spectrum-tooltip-tip-height-percentage )) 50 % );
293
- inset-inline-start : 100 % ;
228
+ inset-inline-start : calc (100 % - ( 0.5 * var (--mod-tooltip-tip-square-size , var (--spectrum-tooltip-tip-square-size ))) - var (--mod-tooltip-tip-antialiasing-inset , var (--spectrum-tooltip-tip-antialiasing-inset )) + var (--highcontrast -tooltip-border-width ) );
229
+ transform : rotate ( -135 deg ) ;
294
230
}
295
231
296
232
/* tip is vertical at top ◁ ▷ */
@@ -317,9 +253,9 @@ governing permissions and limitations under the License.
317
253
.spectrum-Tooltip--end-top & ,
318
254
.spectrum-Tooltip--end-bottom & {
319
255
& : dir (rtl ) {
320
- clip-path : polygon ( calc ( 0 % - var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset ))) 0 , calc ( 0 % - var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset ))) 100 % , var ( --mod-tooltip-tip-height-percentage , var ( --spectrum-tooltip-tip-height-percentage )) 50 % );
256
+ transform : rotate ( -135 deg );
321
257
right : auto;
322
- left : 100% ;
258
+ left : calc ( 100% - ( 0.5 * var ( --mod-tooltip-tip-square-size , var ( --spectrum-tooltip-tip-square-size ))) - var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset )) + var ( --highcontrast-tooltip-border-width )) ;
323
259
}
324
260
}
325
261
@@ -331,25 +267,13 @@ governing permissions and limitations under the License.
331
267
.spectrum-Tooltip--start-top & ,
332
268
.spectrum-Tooltip--start-bottom & {
333
269
& : dir (rtl ) {
334
- clip-path : polygon ( var ( --mod-tooltip-tip-height-percentage , var ( --spectrum-tooltip-tip-height-percentage )) 50 % , calc ( 100 % + var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset ))) 100 % , calc ( 100 % + var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset ))) 0 );
270
+ transform : rotate ( 45 deg );
335
271
left : auto;
336
- right : 100% ;
272
+ right : calc ( 100% - ( 0.5 * var ( --mod-tooltip-tip-square-size , var ( --spectrum-tooltip-tip-square-size ))) - var ( --mod-tooltip-tip-antialiasing-inset , var ( --spectrum-tooltip-tip-antialiasing-inset )) + var ( --highcontrast-tooltip-border-width )) ;
337
273
}
338
274
}
339
275
}
340
276
341
- /****** Icon ******/
342
- .spectrum-Tooltip-typeIcon {
343
- /* subtract tooltip padding from icon start margin */
344
- margin-inline-start : calc (var (--mod-tooltip-icon-spacing-inline-start , var (--spectrum-tooltip-icon-spacing-inline-start )) - var (--mod-tooltip-spacing-inline , var (--spectrum-tooltip-spacing-inline )));
345
- margin-inline-end : var (--mod-tooltip-icon-spacing-inline-end , var (--spectrum-tooltip-icon-spacing-inline-end ));
346
- margin-block-start : var (--mod-tooltip-icon-spacing-block-start , var (--spectrum-tooltip-icon-spacing-block-start ));
347
- inline-size : var (--mod-tooltip-icon-width , var (--spectrum-tooltip-icon-width ));
348
- block-size : var (--mod-tooltip-icon-height , var (--spectrum-tooltip-icon-height ));
349
- align-self : flex-start;
350
- flex-shrink : 0 ;
351
- }
352
-
353
277
/****** Label ******/
354
278
.spectrum-Tooltip-label {
355
279
/* Make sure line height is correct to prevent problems in Windows */
@@ -647,3 +571,14 @@ governing permissions and limitations under the License.
647
571
}
648
572
}
649
573
}
574
+
575
+ @media (forced-colors : active) {
576
+ .spectrum-Tooltip {
577
+ --highcontrast-tooltip-border-width : 1px ;
578
+ border : var (--highcontrast-tooltip-border-width ) solid CanvasText;
579
+ }
580
+
581
+ .spectrum-Tooltip-tip {
582
+ --highcontrast-tooltip-background-color-default : CanvasText;
583
+ }
584
+ }
0 commit comments