@@ -17,16 +17,17 @@ import androidx.compose.ui.unit.dp
1717
1818@OptIn(ExperimentalFoundationApi ::class )
1919@Composable
20- fun WithTooltip (
20+ fun WithTooltipAtPointer (
2121 tooltip : @Composable () -> Unit ,
2222 content : @Composable () -> Unit
2323) {
2424 TooltipArea (
2525 tooltip = {
2626 Surface (
2727 modifier = Modifier .shadow(4 .dp),
28- color = MaterialTheme .colors.surface ,
28+ color = MaterialTheme .colors.background ,
2929 shape = RoundedCornerShape (4 .dp),
30+ elevation = 2 .dp
3031// border = BorderStroke(width = 1.dp, Color.White)
3132 ) {
3233 Box (
@@ -36,8 +37,8 @@ fun WithTooltip(
3637 }
3738 }
3839 },
39- modifier = Modifier .padding(start = 40 .dp),
40- delayMillis = 600 , // In milliseconds
40+ modifier = Modifier , // .padding(start = 40.dp),
41+ delayMillis = 100 , // In milliseconds
4142 tooltipPlacement = TooltipPlacement .CursorPoint (
4243 alignment = Alignment .BottomEnd ,
4344 offset = DpOffset (
@@ -46,6 +47,39 @@ fun WithTooltip(
4647 ),
4748 )
4849 ) {
49- content()
50+ content()
51+ }
52+ }
53+ @OptIn(ExperimentalFoundationApi ::class )
54+ @Composable
55+ fun WithTooltipAbove (
56+ tooltip : @Composable () -> Unit ,
57+ content : @Composable () -> Unit
58+ ) {
59+ TooltipArea (
60+ tooltip = {
61+ Surface (
62+ modifier = Modifier .shadow(4 .dp),
63+ color = MaterialTheme .colors.background,
64+ shape = RoundedCornerShape (4 .dp),
65+ elevation = 2 .dp
66+ // border = BorderStroke(width = 1.dp, Color.White)
67+ ) {
68+ Box (
69+ modifier = Modifier .padding(horizontal = 8 .dp, vertical = 4 .dp)
70+ ) {
71+ tooltip()
72+ }
73+ }
74+ },
75+ modifier = Modifier , // .padding(start = 40.dp),
76+ delayMillis = 100 , // In milliseconds
77+ tooltipPlacement = TooltipPlacement .ComponentRect (
78+ anchor = Alignment .TopCenter ,
79+ alignment = Alignment .TopCenter ,
80+ offset = DpOffset (0 .dp, 0 .dp),
81+ )
82+ ) {
83+ content()
5084 }
5185}
0 commit comments