Skip to content

Commit

Permalink
Remove LaunchedEffect workaround (#379)
Browse files Browse the repository at this point in the history
* Remove LaunchedEffect workaround for library bug

* Apply Spotless

* Changed single var to val

---------

Co-authored-by: jakeroseman <[email protected]>
  • Loading branch information
jakeroseman and jakeroseman authored Oct 14, 2024
1 parent 4baf477 commit 5545f37
Showing 1 changed file with 4 additions and 31 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,9 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.material3.TooltipBox
import androidx.compose.material3.TooltipDefaults
import androidx.compose.material3.TooltipState
import androidx.compose.material3.rememberTooltipState
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
Expand Down Expand Up @@ -79,14 +76,13 @@ fun PlainTooltipExample(
modifier: Modifier = Modifier,
plainTooltipText: String = "Add to favorites"
) {
var tooltipState by remember { mutableStateOf(TooltipState()) }
TooltipBox(
modifier = modifier,
positionProvider = TooltipDefaults.rememberPlainTooltipPositionProvider(),
tooltip = {
PlainTooltip { Text(plainTooltipText) }
},
state = tooltipState
state = rememberTooltipState()
) {
IconButton(onClick = { /* Do something... */ }) {
Icon(
Expand All @@ -95,13 +91,6 @@ fun PlainTooltipExample(
)
}
}

// Reset tooltipState after closing the tooltip.
LaunchedEffect(tooltipState.isVisible) {
if (!tooltipState.isVisible) {
tooltipState = TooltipState()
}
}
}

// [END android_compose_components_plaintooltipexample]
Expand All @@ -120,8 +109,6 @@ fun RichTooltipExample(
richTooltipSubheadText: String = "Rich Tooltip",
richTooltipText: String = "Rich tooltips support multiple lines of informational text."
) {
var tooltipState by remember { mutableStateOf(TooltipState(isPersistent = true)) }

TooltipBox(
modifier = modifier,
positionProvider = TooltipDefaults.rememberRichTooltipPositionProvider(),
Expand All @@ -132,7 +119,7 @@ fun RichTooltipExample(
Text(richTooltipText)
}
},
state = tooltipState
state = rememberTooltipState()
) {
IconButton(onClick = { /* Icon button's click event */ }) {
Icon(
Expand All @@ -141,13 +128,6 @@ fun RichTooltipExample(
)
}
}

// Reset tooltipState after closing the tooltip.
LaunchedEffect(tooltipState.isVisible) {
if (!tooltipState.isVisible) {
tooltipState = TooltipState(isPersistent = true)
}
}
}
// [END android_compose_components_richtooltipexample]

Expand All @@ -166,7 +146,7 @@ fun AdvancedRichTooltipExample(
richTooltipText: String = "Rich tooltips support multiple lines of informational text.",
richTooltipActionText: String = "Dismiss"
) {
var tooltipState by remember { mutableStateOf(TooltipState(isPersistent = true)) }
val tooltipState = rememberTooltipState()

TooltipBox(
modifier = modifier,
Expand Down Expand Up @@ -195,13 +175,6 @@ fun AdvancedRichTooltipExample(
)
}
}

// Reset tooltipState after closing the tooltip.
LaunchedEffect(tooltipState.isVisible) {
if (!tooltipState.isVisible) {
tooltipState = TooltipState(isPersistent = true)
}
}
}
// [END android_compose_components_advancedrichtooltipexample]

Expand Down

0 comments on commit 5545f37

Please sign in to comment.