diff --git a/app/src/main/java/com/example/cupcake/FlavorFragment.kt b/app/src/main/java/com/example/cupcake/FlavorFragment.kt index cae160cee0e8fa687715c291a8b0f6122957640e..928148455e56b623c66ad230426c1229b88d4c83 100644 --- a/app/src/main/java/com/example/cupcake/FlavorFragment.kt +++ b/app/src/main/java/com/example/cupcake/FlavorFragment.kt @@ -48,9 +48,9 @@ class FlavorFragment : Fragment() { super.onViewCreated(view, savedInstanceState) binding?.apply { - viewModel = sharedViewModel lifecycleOwner = viewLifecycleOwner - nextButton.setOnClickListener { goToNextScreen() } + viewModel = sharedViewModel + flavorFragment = this@FlavorFragment } } diff --git a/app/src/main/java/com/example/cupcake/PickupFragment.kt b/app/src/main/java/com/example/cupcake/PickupFragment.kt index 799116c90d623a19a3eea6bd467d90c52ab924b3..0a7f09f40c507b27af567990cfcc05e12b4e2457 100644 --- a/app/src/main/java/com/example/cupcake/PickupFragment.kt +++ b/app/src/main/java/com/example/cupcake/PickupFragment.kt @@ -48,9 +48,9 @@ class PickupFragment : Fragment() { super.onViewCreated(view, savedInstanceState) binding?.apply { - viewModel = sharedViewModel lifecycleOwner = viewLifecycleOwner - nextButton.setOnClickListener { goToNextScreen() } + viewModel = sharedViewModel + pickupFragment = this@PickupFragment } } diff --git a/app/src/main/java/com/example/cupcake/StartFragment.kt b/app/src/main/java/com/example/cupcake/StartFragment.kt index 5c9e353498c3a02984d5c7873b684ee60e05b2ef..fdb0c102fe36c4729c3458d0b4c7ff8182615768 100644 --- a/app/src/main/java/com/example/cupcake/StartFragment.kt +++ b/app/src/main/java/com/example/cupcake/StartFragment.kt @@ -46,13 +46,7 @@ class StartFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - - binding?.apply { - // Set up the button click listeners - orderOneCupcake.setOnClickListener { orderCupcake(1) } - orderSixCupcakes.setOnClickListener { orderCupcake(6) } - orderTwelveCupcakes.setOnClickListener { orderCupcake(12) } - } + binding?.startFragment = this } /** diff --git a/app/src/main/java/com/example/cupcake/SummaryFragment.kt b/app/src/main/java/com/example/cupcake/SummaryFragment.kt index 9a9affb658536bfa531d3b75bbd6369f921e8789..dcdf4a72e7557c8dbfdd39af9a779e1f0aad95c5 100644 --- a/app/src/main/java/com/example/cupcake/SummaryFragment.kt +++ b/app/src/main/java/com/example/cupcake/SummaryFragment.kt @@ -49,9 +49,9 @@ class SummaryFragment : Fragment() { super.onViewCreated(view, savedInstanceState) binding?.apply { - viewModel = sharedViewModel lifecycleOwner = viewLifecycleOwner - sendButton.setOnClickListener { sendOrder() } + viewModel = sharedViewModel + summaryFragment = this@SummaryFragment } } diff --git a/app/src/main/res/layout/fragment_flavor.xml b/app/src/main/res/layout/fragment_flavor.xml index c5e6d4c1717e6ecb36d1f390f533db757b571825..1f5abdd8c95c27704aef0476b6e5eb3e3b0cec8c 100644 --- a/app/src/main/res/layout/fragment_flavor.xml +++ b/app/src/main/res/layout/fragment_flavor.xml @@ -24,6 +24,11 @@ <variable name="viewModel" type="com.example.cupcake.model.OrderViewModel" /> + + <variable + name="flavorFragment" + type="com.example.cupcake.FlavorFragment" /> + </data> <ScrollView @@ -107,6 +112,7 @@ <Button android:id="@+id/next_button" + android:onClick="@{() -> flavorFragment.goToNextScreen()}" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/side_margin" diff --git a/app/src/main/res/layout/fragment_pickup.xml b/app/src/main/res/layout/fragment_pickup.xml index bc7cd44053cb85ea49d4287e276d7f24b7a3ccb5..20459e953d71b4bf9a098f9c20222af4a2494b69 100644 --- a/app/src/main/res/layout/fragment_pickup.xml +++ b/app/src/main/res/layout/fragment_pickup.xml @@ -24,6 +24,10 @@ <variable name="viewModel" type="com.example.cupcake.model.OrderViewModel" /> + + <variable + name="pickupFragment" + type="com.example.cupcake.PickupFragment" /> </data> <ScrollView @@ -104,6 +108,7 @@ <Button android:id="@+id/next_button" + android:onClick="@{() -> pickupFragment.goToNextScreen()}" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="@dimen/side_margin" diff --git a/app/src/main/res/layout/fragment_start.xml b/app/src/main/res/layout/fragment_start.xml index 25b11c950ba224a08cc83c91ff9ed038903fd535..d5841550cf4fd0e534422482504f91bc441f22c3 100644 --- a/app/src/main/res/layout/fragment_start.xml +++ b/app/src/main/res/layout/fragment_start.xml @@ -20,6 +20,12 @@ xmlns:tools="http://schemas.android.com/tools" tools:context=".StartFragment"> + <data> + <variable + name="startFragment" + type="com.example.cupcake.StartFragment" /> + </data> + <ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> @@ -50,6 +56,7 @@ <Button android:id="@+id/order_one_cupcake" + android:onClick="@{() -> startFragment.orderCupcake(1)}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" @@ -59,6 +66,7 @@ <Button android:id="@+id/order_six_cupcakes" + android:onClick="@{() -> startFragment.orderCupcake(6)}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" @@ -68,6 +76,7 @@ <Button android:id="@+id/order_twelve_cupcakes" + android:onClick="@{() -> startFragment.orderCupcake(12)}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" diff --git a/app/src/main/res/layout/fragment_summary.xml b/app/src/main/res/layout/fragment_summary.xml index c9702b5811f8ff95362d01e6581fb59c2d5e9558..720a3d0858a97f46850d22fde4e5395d78eb7e6e 100644 --- a/app/src/main/res/layout/fragment_summary.xml +++ b/app/src/main/res/layout/fragment_summary.xml @@ -23,6 +23,10 @@ <variable name="viewModel" type="com.example.cupcake.model.OrderViewModel" /> + + <variable + name="summaryFragment" + type="com.example.cupcake.SummaryFragment" /> </data> <ScrollView @@ -131,6 +135,7 @@ <Button android:id="@+id/send_button" + android:onClick="@{() -> summaryFragment.sendOrder()}" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/side_margin"