diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt deleted file mode 100644 index 630f1a1..0000000 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt +++ /dev/null @@ -1,55 +0,0 @@ -package fr.tf1.player.atelierplayermvvm.ui.list - -import android.view.LayoutInflater -import android.view.View -import android.view.View.OnClickListener -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.bumptech.glide.Glide -import fr.tf1.player.atelierplayermvvm.R -import fr.tf1.player.atelierplayermvvm.data.model.Book - -class BookListAdapter(val onBookItemClick: (id: Int) -> Unit) : RecyclerView.Adapter() { - private val items: MutableList = ArrayList() - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BooklListViewHolder { - val v: View = - LayoutInflater.from(parent.context).inflate(R.layout.book_item, parent, false) - return BooklListViewHolder(v) - } - - override fun onBindViewHolder(holder: BooklListViewHolder, position: Int) { - val book = items[position] - holder.bookName.text = book.bookName - val context = holder.bookCover.context - Glide.with(context) - .load(book.picUrl) - .into(holder.bookCover) - holder.itemView.setOnClickListener{ - book.id?.let { - onBookItemClick(it.toInt()) - } - } - } - - fun refresh(newItems: List? = null) { - newItems?.let { - items.clear() - items.addAll(newItems) - } - notifyDataSetChanged() - } - - override fun getItemCount(): Int { - return items.size - } - - class BooklListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { - val bookCover: ImageView = itemView.findViewById(R.id.bookCover) - val bookName: TextView = itemView.findViewById(R.id.bookName) - - } -} - diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt deleted file mode 100644 index 630f1a1..0000000 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt +++ /dev/null @@ -1,55 +0,0 @@ -package fr.tf1.player.atelierplayermvvm.ui.list - -import android.view.LayoutInflater -import android.view.View -import android.view.View.OnClickListener -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.bumptech.glide.Glide -import fr.tf1.player.atelierplayermvvm.R -import fr.tf1.player.atelierplayermvvm.data.model.Book - -class BookListAdapter(val onBookItemClick: (id: Int) -> Unit) : RecyclerView.Adapter() { - private val items: MutableList = ArrayList() - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BooklListViewHolder { - val v: View = - LayoutInflater.from(parent.context).inflate(R.layout.book_item, parent, false) - return BooklListViewHolder(v) - } - - override fun onBindViewHolder(holder: BooklListViewHolder, position: Int) { - val book = items[position] - holder.bookName.text = book.bookName - val context = holder.bookCover.context - Glide.with(context) - .load(book.picUrl) - .into(holder.bookCover) - holder.itemView.setOnClickListener{ - book.id?.let { - onBookItemClick(it.toInt()) - } - } - } - - fun refresh(newItems: List? = null) { - newItems?.let { - items.clear() - items.addAll(newItems) - } - notifyDataSetChanged() - } - - override fun getItemCount(): Int { - return items.size - } - - class BooklListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { - val bookCover: ImageView = itemView.findViewById(R.id.bookCover) - val bookName: TextView = itemView.findViewById(R.id.bookName) - - } -} - diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt index cca7814..5dcb050 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.list -import android.content.Intent -import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.activity.viewModels +import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView -import androidx.recyclerview.widget.RecyclerView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.ui.details.BookDetailActivity @AndroidEntryPoint class ListActivity : AppCompatActivity() { private val viewModel: ListViewModel by viewModels() - private var bookListAdapter = BookListAdapter { bookId -> - val intent = Intent(this@ListActivity, BookDetailActivity::class.java) - intent.putExtra("BOOK_ID", bookId) - startActivity(intent) - } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt deleted file mode 100644 index 630f1a1..0000000 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt +++ /dev/null @@ -1,55 +0,0 @@ -package fr.tf1.player.atelierplayermvvm.ui.list - -import android.view.LayoutInflater -import android.view.View -import android.view.View.OnClickListener -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.bumptech.glide.Glide -import fr.tf1.player.atelierplayermvvm.R -import fr.tf1.player.atelierplayermvvm.data.model.Book - -class BookListAdapter(val onBookItemClick: (id: Int) -> Unit) : RecyclerView.Adapter() { - private val items: MutableList = ArrayList() - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BooklListViewHolder { - val v: View = - LayoutInflater.from(parent.context).inflate(R.layout.book_item, parent, false) - return BooklListViewHolder(v) - } - - override fun onBindViewHolder(holder: BooklListViewHolder, position: Int) { - val book = items[position] - holder.bookName.text = book.bookName - val context = holder.bookCover.context - Glide.with(context) - .load(book.picUrl) - .into(holder.bookCover) - holder.itemView.setOnClickListener{ - book.id?.let { - onBookItemClick(it.toInt()) - } - } - } - - fun refresh(newItems: List? = null) { - newItems?.let { - items.clear() - items.addAll(newItems) - } - notifyDataSetChanged() - } - - override fun getItemCount(): Int { - return items.size - } - - class BooklListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { - val bookCover: ImageView = itemView.findViewById(R.id.bookCover) - val bookName: TextView = itemView.findViewById(R.id.bookName) - - } -} - diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt index cca7814..5dcb050 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.list -import android.content.Intent -import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.activity.viewModels +import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView -import androidx.recyclerview.widget.RecyclerView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.ui.details.BookDetailActivity @AndroidEntryPoint class ListActivity : AppCompatActivity() { private val viewModel: ListViewModel by viewModels() - private var bookListAdapter = BookListAdapter { bookId -> - val intent = Intent(this@ListActivity, BookDetailActivity::class.java) - intent.putExtra("BOOK_ID", bookId) - startActivity(intent) - } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/res/layout/activity_list.xml b/app/src/main/res/layout/activity_list.xml deleted file mode 100644 index 08bebc3..0000000 --- a/app/src/main/res/layout/activity_list.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt deleted file mode 100644 index 630f1a1..0000000 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt +++ /dev/null @@ -1,55 +0,0 @@ -package fr.tf1.player.atelierplayermvvm.ui.list - -import android.view.LayoutInflater -import android.view.View -import android.view.View.OnClickListener -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.bumptech.glide.Glide -import fr.tf1.player.atelierplayermvvm.R -import fr.tf1.player.atelierplayermvvm.data.model.Book - -class BookListAdapter(val onBookItemClick: (id: Int) -> Unit) : RecyclerView.Adapter() { - private val items: MutableList = ArrayList() - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BooklListViewHolder { - val v: View = - LayoutInflater.from(parent.context).inflate(R.layout.book_item, parent, false) - return BooklListViewHolder(v) - } - - override fun onBindViewHolder(holder: BooklListViewHolder, position: Int) { - val book = items[position] - holder.bookName.text = book.bookName - val context = holder.bookCover.context - Glide.with(context) - .load(book.picUrl) - .into(holder.bookCover) - holder.itemView.setOnClickListener{ - book.id?.let { - onBookItemClick(it.toInt()) - } - } - } - - fun refresh(newItems: List? = null) { - newItems?.let { - items.clear() - items.addAll(newItems) - } - notifyDataSetChanged() - } - - override fun getItemCount(): Int { - return items.size - } - - class BooklListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { - val bookCover: ImageView = itemView.findViewById(R.id.bookCover) - val bookName: TextView = itemView.findViewById(R.id.bookName) - - } -} - diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt index cca7814..5dcb050 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.list -import android.content.Intent -import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.activity.viewModels +import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView -import androidx.recyclerview.widget.RecyclerView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.ui.details.BookDetailActivity @AndroidEntryPoint class ListActivity : AppCompatActivity() { private val viewModel: ListViewModel by viewModels() - private var bookListAdapter = BookListAdapter { bookId -> - val intent = Intent(this@ListActivity, BookDetailActivity::class.java) - intent.putExtra("BOOK_ID", bookId) - startActivity(intent) - } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/res/layout/activity_list.xml b/app/src/main/res/layout/activity_list.xml deleted file mode 100644 index 08bebc3..0000000 --- a/app/src/main/res/layout/activity_list.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/book_detail.xml b/app/src/main/res/layout/book_detail.xml deleted file mode 100644 index 9729ec8..0000000 --- a/app/src/main/res/layout/book_detail.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt index 4f7ab64..da41e3f 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/details/BookDetailActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.details import android.os.Bundle -import android.widget.ImageView -import android.widget.TextView import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.R @AndroidEntryPoint class BookDetailActivity : AppCompatActivity() { private val viewModel: BookDetailViewModel by viewModels() - private lateinit var bookCover: ImageView - private lateinit var bookTitle: TextView - private lateinit var authorName: TextView - private lateinit var bookDescription: TextView - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(ComposeView(this).apply { @@ -26,25 +18,7 @@ } }) - bookTitle = findViewById(R.id.bookTitle) - authorName = findViewById(R.id.authorName) - bookDescription = findViewById(R.id.bookDescription) - bookCover = findViewById(R.id.bookCover) - - val bookId = intent.getIntExtra("BOOK_ID", 0) -// viewModel.book.observe(this) { book -> -// if (book != null) { -// bookTitle.text = book.bookName -// authorName.text = book.authorName -// bookDescription.text = book.bookDesc -// Glide.with(this@BookDetailActivity) -// .load(book.picUrl) -// .into(bookCover) -// } else { -// Toast.makeText(this@BookDetailActivity, "No book found", Toast.LENGTH_LONG).show() -// } -// -// } - viewModel.fetchBookDetail(bookId) + val bookId = intent.getStringExtra("BOOK_ID") + viewModel.fetchBookDetail(bookId?.toInt() ?: 0) } } \ No newline at end of file diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt deleted file mode 100644 index 630f1a1..0000000 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/BookListAdapter.kt +++ /dev/null @@ -1,55 +0,0 @@ -package fr.tf1.player.atelierplayermvvm.ui.list - -import android.view.LayoutInflater -import android.view.View -import android.view.View.OnClickListener -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.bumptech.glide.Glide -import fr.tf1.player.atelierplayermvvm.R -import fr.tf1.player.atelierplayermvvm.data.model.Book - -class BookListAdapter(val onBookItemClick: (id: Int) -> Unit) : RecyclerView.Adapter() { - private val items: MutableList = ArrayList() - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BooklListViewHolder { - val v: View = - LayoutInflater.from(parent.context).inflate(R.layout.book_item, parent, false) - return BooklListViewHolder(v) - } - - override fun onBindViewHolder(holder: BooklListViewHolder, position: Int) { - val book = items[position] - holder.bookName.text = book.bookName - val context = holder.bookCover.context - Glide.with(context) - .load(book.picUrl) - .into(holder.bookCover) - holder.itemView.setOnClickListener{ - book.id?.let { - onBookItemClick(it.toInt()) - } - } - } - - fun refresh(newItems: List? = null) { - newItems?.let { - items.clear() - items.addAll(newItems) - } - notifyDataSetChanged() - } - - override fun getItemCount(): Int { - return items.size - } - - class BooklListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { - val bookCover: ImageView = itemView.findViewById(R.id.bookCover) - val bookName: TextView = itemView.findViewById(R.id.bookName) - - } -} - diff --git a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt index cca7814..5dcb050 100644 --- a/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt +++ b/app/src/main/java/fr/tf1/player/atelierplayermvvm/ui/list/ListActivity.kt @@ -1,23 +1,15 @@ package fr.tf1.player.atelierplayermvvm.ui.list -import android.content.Intent -import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.activity.viewModels +import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.platform.ComposeView -import androidx.recyclerview.widget.RecyclerView import dagger.hilt.android.AndroidEntryPoint -import fr.tf1.player.atelierplayermvvm.ui.details.BookDetailActivity @AndroidEntryPoint class ListActivity : AppCompatActivity() { private val viewModel: ListViewModel by viewModels() - private var bookListAdapter = BookListAdapter { bookId -> - val intent = Intent(this@ListActivity, BookDetailActivity::class.java) - intent.putExtra("BOOK_ID", bookId) - startActivity(intent) - } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/res/layout/activity_list.xml b/app/src/main/res/layout/activity_list.xml deleted file mode 100644 index 08bebc3..0000000 --- a/app/src/main/res/layout/activity_list.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/book_detail.xml b/app/src/main/res/layout/book_detail.xml deleted file mode 100644 index 9729ec8..0000000 --- a/app/src/main/res/layout/book_detail.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/book_item.xml b/app/src/main/res/layout/book_item.xml deleted file mode 100644 index ada1307..0000000 --- a/app/src/main/res/layout/book_item.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - \ No newline at end of file