Skip to content

Commit 50e3ecb

Browse files
committed
feat: fixed delay in share sheet after export button is clicked
1 parent af74122 commit 50e3ecb

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

.idea/workspace.xml

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/com/opennotes/feature_node/presentation/settings/SettingsScreen.kt

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import androidx.compose.material3.TopAppBar
2626
import androidx.compose.runtime.Composable
2727
import androidx.compose.runtime.LaunchedEffect
2828
import androidx.compose.runtime.remember
29+
import androidx.compose.runtime.rememberCoroutineScope
2930
import androidx.compose.ui.Alignment
3031
import androidx.compose.ui.Modifier
3132
import androidx.compose.ui.unit.dp
@@ -34,6 +35,7 @@ import androidx.navigation.NavController
3435
import kotlinx.coroutines.flow.collectLatest
3536
import androidx.compose.ui.platform.LocalContext
3637
import androidx.compose.ui.unit.sp
38+
import kotlinx.coroutines.launch
3739

3840
@OptIn(ExperimentalMaterial3Api::class)
3941
@Composable
@@ -43,6 +45,7 @@ fun SettingsScreen(
4345

4446
val snackbarHostState = remember { SnackbarHostState() }
4547
val context= LocalContext.current
48+
val scope= rememberCoroutineScope()
4649

4750
val filePickerLauncher = rememberLauncherForActivityResult(
4851
contract = ActivityResultContracts.OpenDocument(),
@@ -58,14 +61,17 @@ fun SettingsScreen(
5861
viewModel.uiEvent.collectLatest { event ->
5962
when (event) {
6063
is SettingsViewModel.UiEvent.ShowSnackbar -> {
61-
snackbarHostState.showSnackbar(message = event.message)
64+
scope.launch {
65+
snackbarHostState.showSnackbar(message = event.message)
66+
}
6267
}
6368

6469
is SettingsViewModel.UiEvent.ShowShareDialog -> {
65-
snackbarHostState.showSnackbar(
66-
message="Notes exported successfully!"
67-
)
68-
70+
scope.launch {
71+
snackbarHostState.showSnackbar(
72+
message = "Notes exported successfully!"
73+
)
74+
}
6975

7076
val shareIntent= Intent(Intent.ACTION_SEND).apply{
7177
putExtra(Intent.EXTRA_STREAM,event.uri)

0 commit comments

Comments
 (0)