Skip to content

Commit b417fbb

Browse files
committed
Add: sharing functionality on celebration dialog.
1 parent cd6b56a commit b417fbb

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/products/FirstProductCelebrationDialog.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import com.woocommerce.android.ui.compose.theme.WooThemeWithBackground
1414
import com.woocommerce.android.viewmodel.MultiLiveEvent.Event.Exit
1515
import dagger.hilt.android.AndroidEntryPoint
1616
import org.wordpress.android.util.DisplayUtils
17+
import javax.inject.Inject
1718

1819
@AndroidEntryPoint
1920
class FirstProductCelebrationDialog : DialogFragment() {
@@ -22,6 +23,8 @@ class FirstProductCelebrationDialog : DialogFragment() {
2223
private const val TABLET_LANDSCAPE_HEIGHT_RATIO = 0.8f
2324
}
2425

26+
@Inject lateinit var navigator: ProductNavigator
27+
2528
private val viewModel: FirstProductCelebrationViewModel by viewModels()
2629

2730
override fun onCreate(savedInstanceState: Bundle?) {
@@ -48,6 +51,7 @@ class FirstProductCelebrationDialog : DialogFragment() {
4851
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
4952
viewModel.event.observe(viewLifecycleOwner) { event ->
5053
when (event) {
54+
is ProductNavigationTarget -> navigator.navigate(this, event)
5155
is Exit -> findNavController().navigateUp()
5256
}
5357
}

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/products/FirstProductCelebrationViewModel.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,18 @@ package com.woocommerce.android.ui.products
33
import androidx.lifecycle.SavedStateHandle
44
import com.woocommerce.android.viewmodel.MultiLiveEvent.Event.Exit
55
import com.woocommerce.android.viewmodel.ScopedViewModel
6+
import com.woocommerce.android.viewmodel.navArgs
67
import dagger.hilt.android.lifecycle.HiltViewModel
78
import javax.inject.Inject
89

910
@HiltViewModel
1011
class FirstProductCelebrationViewModel @Inject constructor(
1112
savedStateHandle: SavedStateHandle
1213
) : ScopedViewModel(savedStateHandle) {
14+
private val navArgs: FirstProductCelebrationDialogArgs by savedStateHandle.navArgs()
15+
1316
fun onShareButtonClicked() {
14-
// TODO
17+
triggerEvent(ProductNavigationTarget.ShareProduct(navArgs.permalink, navArgs.productName))
1518
}
1619

1720
fun onDismissButtonClicked() {

0 commit comments

Comments
 (0)