@@ -35,6 +35,7 @@ import androidx.compose.material3.TextButton
3535import androidx.compose.material3.TooltipBox
3636import androidx.compose.material3.TooltipDefaults
3737import androidx.compose.material3.TooltipState
38+ import androidx.compose.material3.rememberTooltipState
3839import androidx.compose.runtime.Composable
3940import androidx.compose.runtime.LaunchedEffect
4041import androidx.compose.runtime.getValue
@@ -79,14 +80,13 @@ fun PlainTooltipExample(
7980 modifier : Modifier = Modifier ,
8081 plainTooltipText : String = "Add to favorites"
8182) {
82- var tooltipState by remember { mutableStateOf(TooltipState ()) }
8383 TooltipBox (
8484 modifier = modifier,
8585 positionProvider = TooltipDefaults .rememberPlainTooltipPositionProvider(),
8686 tooltip = {
8787 PlainTooltip { Text (plainTooltipText) }
8888 },
89- state = tooltipState
89+ state = rememberTooltipState()
9090 ) {
9191 IconButton (onClick = { /* Do something... */ }) {
9292 Icon (
@@ -95,13 +95,6 @@ fun PlainTooltipExample(
9595 )
9696 }
9797 }
98-
99- // Reset tooltipState after closing the tooltip.
100- LaunchedEffect (tooltipState.isVisible) {
101- if (! tooltipState.isVisible) {
102- tooltipState = TooltipState ()
103- }
104- }
10598}
10699
107100// [END android_compose_components_plaintooltipexample]
@@ -120,8 +113,6 @@ fun RichTooltipExample(
120113 richTooltipSubheadText : String = "Rich Tooltip ",
121114 richTooltipText : String = "Rich tooltips support multiple lines of informational text."
122115) {
123- var tooltipState by remember { mutableStateOf(TooltipState (isPersistent = true )) }
124-
125116 TooltipBox (
126117 modifier = modifier,
127118 positionProvider = TooltipDefaults .rememberRichTooltipPositionProvider(),
@@ -132,7 +123,7 @@ fun RichTooltipExample(
132123 Text (richTooltipText)
133124 }
134125 },
135- state = tooltipState
126+ state = rememberTooltipState()
136127 ) {
137128 IconButton (onClick = { /* Icon button's click event */ }) {
138129 Icon (
@@ -141,13 +132,6 @@ fun RichTooltipExample(
141132 )
142133 }
143134 }
144-
145- // Reset tooltipState after closing the tooltip.
146- LaunchedEffect (tooltipState.isVisible) {
147- if (! tooltipState.isVisible) {
148- tooltipState = TooltipState (isPersistent = true )
149- }
150- }
151135}
152136// [END android_compose_components_richtooltipexample]
153137
@@ -166,7 +150,7 @@ fun AdvancedRichTooltipExample(
166150 richTooltipText : String = "Rich tooltips support multiple lines of informational text.",
167151 richTooltipActionText : String = "Dismiss "
168152) {
169- var tooltipState by remember { mutableStateOf( TooltipState (isPersistent = true )) }
153+ var tooltipState = rememberTooltipState()
170154
171155 TooltipBox (
172156 modifier = modifier,
@@ -195,13 +179,6 @@ fun AdvancedRichTooltipExample(
195179 )
196180 }
197181 }
198-
199- // Reset tooltipState after closing the tooltip.
200- LaunchedEffect (tooltipState.isVisible) {
201- if (! tooltipState.isVisible) {
202- tooltipState = TooltipState (isPersistent = true )
203- }
204- }
205182}
206183// [END android_compose_components_advancedrichtooltipexample]
207184
0 commit comments