Skip to content

Commit cddc490

Browse files
committed
fix: 다시 콜백으로 변경
ㅠㅠ
1 parent c58b2b9 commit cddc490

File tree

3 files changed

+7
-20
lines changed

3 files changed

+7
-20
lines changed

app/src/main/java/com/easyhz/picly/view/MainFragment.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ class MainFragment:Fragment() {
116116
private fun resetSearchBar() {
117117
binding.toolbar.apply {
118118
searchEditText.setText("")
119+
viewModel.setSearchText("")
119120
searchEditText.clearFocus()
120121
val layoutParams = ConstraintLayout.LayoutParams(112.toPx(requireContext()), searchEditText.height)
121122
layoutParams.apply {

app/src/main/java/com/easyhz/picly/view/album/AlbumAdapter.kt

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,14 @@ import androidx.recyclerview.widget.DiffUtil
99
import androidx.recyclerview.widget.RecyclerView
1010
import com.easyhz.picly.databinding.ItemAlbumBinding
1111
import com.easyhz.picly.domain.model.album.AlbumItem
12-
import com.easyhz.picly.domain.model.album.SearchData
13-
import kotlin.coroutines.resume
14-
import kotlin.coroutines.suspendCoroutine
1512

1613
class AlbumAdapter(
14+
private val noResult: (Boolean , String) -> Unit,
1715
private val onClickLinkButton: (AlbumItem) -> Unit,
1816
private val onClickListener: (AlbumItem) -> Unit,
1917
):RecyclerView.Adapter<AlbumAdapter.AlbumViewHolder>(), Filterable {
2018
var originalList: List<AlbumItem> = listOf()
2119
private val postFiler = PostFilter()
22-
private var searchData = SearchData()
2320

2421
inner class AlbumViewHolder(val binding: ItemAlbumBinding) : RecyclerView.ViewHolder(binding.root)
2522

@@ -82,16 +79,8 @@ class AlbumAdapter(
8279

8380
override fun publishResults(constraint: CharSequence?, results: FilterResults?) {
8481
val filteredList = results?.values as? List<AlbumItem> ?: emptyList()
85-
searchData.apply {
86-
this.isEmpty = filteredList.isEmpty()
87-
this.string = constraint.toString()
88-
}
82+
noResult(filteredList.isEmpty(), constraint.toString())
8983
differ.submitList(filteredList)
9084
}
9185
}
92-
suspend fun getSearchData(): SearchData {
93-
return suspendCoroutine<SearchData> { continuation ->
94-
continuation.resume(searchData)
95-
}
96-
}
9786
}

app/src/main/java/com/easyhz/picly/view/album/AlbumFragment.kt

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ class AlbumFragment: Fragment() {
6363

6464
private fun setRecyclerView() {
6565
albumAdapter = AlbumAdapter(
66+
noResult = { isEmpty, s -> setNoResult(isEmpty, s) },
6667
onClickLinkButton = { onClickLinkButton(it) }
6768
) {
6869
NavControllerManager.navigateMainToDetail(it)
@@ -90,9 +91,6 @@ class AlbumFragment: Fragment() {
9091
private fun observeSearchText() {
9192
viewModel.searchText.observe(viewLifecycleOwner) {
9293
albumAdapter.filter.filter(it)
93-
CoroutineScope(Dispatchers.Main).launch {
94-
setNoResult()
95-
}
9694
}
9795
}
9896

@@ -107,10 +105,9 @@ class AlbumFragment: Fragment() {
107105
clipboardManager.setPrimaryClip(clipData)
108106
BlueSnackBar.make(binding.root, getString(R.string.link_copy)).show()
109107
}
110-
private suspend fun setNoResult() {
111-
val searchData = albumAdapter.getSearchData()
112-
if (searchData.string.isEmpty() && albumAdapter.originalList.isEmpty()) updateNoResultMessage(true, getString(R.string.no_data_text))
113-
else updateNoResultMessage(searchData.isEmpty, getString(R.string.no_search_text))
108+
private fun setNoResult(isEmpty: Boolean, s: String) {
109+
if (s.isEmpty() && albumAdapter.originalList.isEmpty()) updateNoResultMessage(true, getString(R.string.no_data_text))
110+
else updateNoResultMessage(isEmpty, getString(R.string.no_search_text))
114111
}
115112

116113
private fun updateNoResultMessage(isEmpty: Boolean, message: String) {

0 commit comments

Comments
 (0)