Skip to content
This repository was archived by the owner on Dec 16, 2023. It is now read-only.

Commit 5e9feb1

Browse files
committed
Show edit cart dialog on click
1 parent bbc8fdf commit 5e9feb1

2 files changed

Lines changed: 23 additions & 25 deletions

File tree

app/src/main/java/com/marknkamau/justjava/ui/cart/CartActivity.kt

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@ package com.marknkamau.justjava.ui.cart
22

33
import android.content.Intent
44
import android.os.Bundle
5-
import androidx.recyclerview.widget.DividerItemDecoration
6-
import androidx.recyclerview.widget.LinearLayoutManager
75
import android.view.View
86
import android.widget.LinearLayout
97
import android.widget.Toast
8+
import androidx.recyclerview.widget.DividerItemDecoration
9+
import androidx.recyclerview.widget.LinearLayoutManager
10+
import androidx.recyclerview.widget.RecyclerView
1011
import com.marknkamau.justjava.JustJavaApp
1112
import com.marknkamau.justjava.R
1213
import com.marknkamau.justjava.data.models.CartItem
@@ -17,42 +18,42 @@ import kotlinx.android.synthetic.main.activity_cart.*
1718
class CartActivity : BaseActivity(), CartView {
1819
private lateinit var presenter: CartPresenter
1920
private lateinit var adapter: CartAdapter
21+
private val cartDao by lazy { (application as JustJavaApp).cartDatabase.cartDao() }
2022

2123
override fun onCreate(savedInstanceState: Bundle?) {
2224
super.onCreate(savedInstanceState)
2325
setContentView(R.layout.activity_cart)
2426

25-
val cartDao = (application as JustJavaApp).cartDatabase.cartDao()
26-
2727
presenter = CartPresenter(this, cartDao)
2828
presenter.loadItems()
2929

30-
val editCartDialog = EditCartDialog()
31-
editCartDialog.cartDao = cartDao
32-
editCartDialog.onComplete = { editType, cartItem ->
33-
editCartDialog.dismiss()
34-
if (editType == EditCartDialog.EditType.DELETE) {
35-
presenter.deleteItem(cartItem)
36-
} else {
37-
presenter.updateItem(cartItem)
30+
val editCartDialog = EditCartDialog().apply {
31+
cartDao = this@CartActivity.cartDao
32+
onComplete = { editType, cartItem ->
33+
dismiss()
34+
if (editType == EditCartDialog.EditType.DELETE) {
35+
presenter.deleteItem(cartItem)
36+
} else {
37+
presenter.updateItem(cartItem)
38+
}
3839
}
3940
}
4041

4142
adapter = CartAdapter(this) { cartItem ->
42-
val args = Bundle()
43-
args.putParcelable(EditCartDialog.CART_ITEM, cartItem)
44-
editCartDialog.arguments = args
43+
editCartDialog.arguments = Bundle().apply {
44+
putParcelable(EditCartDialog.CART_ITEM, cartItem)
45+
}
4546
editCartDialog.show(supportFragmentManager, "edit_cart_dialog")
4647
}
47-
rvCart.layoutManager = androidx.recyclerview.widget.LinearLayoutManager(this, androidx.recyclerview.widget.LinearLayoutManager.VERTICAL, false)
48-
rvCart .addItemDecoration(androidx.recyclerview.widget.DividerItemDecoration(this, LinearLayout.VERTICAL))
48+
rvCart.layoutManager = LinearLayoutManager(this, RecyclerView.VERTICAL, false)
49+
rvCart.addItemDecoration(DividerItemDecoration(this, LinearLayout.VERTICAL))
4950
rvCart.adapter = adapter
5051

51-
btnClearCart.setOnClickListener{
52+
btnClearCart.setOnClickListener {
5253
presenter.clearCart()
5354
}
5455

55-
btnCheckout.setOnClickListener{
56+
btnCheckout.setOnClickListener {
5657
startActivity(Intent(this@CartActivity, CheckoutActivity::class.java))
5758
}
5859
}

app/src/main/java/com/marknkamau/justjava/ui/cart/CartAdapter.kt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,13 @@ class CartAdapter(private val context: Context, private val onEditClick: (CartIt
4343
if (item.itemMarshmallow)
4444
toppings.add("Marshmallows")
4545

46-
if (toppings.isNotEmpty()){
46+
if (toppings.isNotEmpty()) {
4747
itemView.tvToppings.text = toppings.toString().replace("[", "").replace("]", "")
48-
}else{
48+
} else {
4949
itemView.tvToppings.visibility = View.GONE
5050
}
5151

52-
itemView.setOnLongClickListener {
53-
onEditClick(item)
54-
true
55-
}
52+
itemView.setOnClickListener { onEditClick(item) }
5653
}
5754
}
5855

0 commit comments

Comments
 (0)