fix(content): 전체 탭 sort-bar 표시를 정리한다
This commit is contained in:
@@ -22,7 +22,6 @@ import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||
import kr.co.vividnext.sodalive.common.ToastMessage
|
||||
import kr.co.vividnext.sodalive.databinding.FragmentV2MainContentBinding
|
||||
import kr.co.vividnext.sodalive.databinding.ViewSectionTitleBinding
|
||||
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||
import kr.co.vividnext.sodalive.home.SeriesPublishedDaysOfWeek
|
||||
import kr.co.vividnext.sodalive.mypage.can.charge.CanChargeActivity
|
||||
import kr.co.vividnext.sodalive.search.SearchActivity
|
||||
@@ -44,6 +43,7 @@ import kr.co.vividnext.sodalive.v2.main.content.model.ContentCommentedAudioUiMod
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.ContentOriginalSeriesSection
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.ContentOriginalSeriesUiModel
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.MainContentAllTabUiState
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.contentAllSortOptions
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.contentAllDayOfWeekOptions
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.toContentAllDayLabelResId
|
||||
import kr.co.vividnext.sodalive.v2.main.content.model.toContentAllTypeLabelResId
|
||||
@@ -232,7 +232,7 @@ class ContentMainFragment : BaseFragment<FragmentV2MainContentBinding>(
|
||||
private fun setUpAllSortButton() {
|
||||
binding.layoutContentAllSortButton.setOnClickListener {
|
||||
val state = currentAllTabState ?: return@setOnClickListener
|
||||
showAllSortPopup(state.selectedSort)
|
||||
showAllSortPopup(state)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -463,7 +463,6 @@ class ContentMainFragment : BaseFragment<FragmentV2MainContentBinding>(
|
||||
}
|
||||
|
||||
private fun bindAllTabControls(state: MainContentAllTabUiState) {
|
||||
binding.tvContentAllTotalCount.text = state.totalCount.moneyFormat()
|
||||
binding.tvContentAllSortLabel.setText(state.selectedSort.toLabelResId())
|
||||
binding.viewContentAllTypeTabs.root.setMenus(
|
||||
contentAllTypes.map { type -> getString(type.toContentAllTypeLabelResId()) },
|
||||
@@ -495,13 +494,15 @@ class ContentMainFragment : BaseFragment<FragmentV2MainContentBinding>(
|
||||
binding.layoutContentAllEmptyError.visibility = View.GONE
|
||||
}
|
||||
|
||||
private fun showAllSortPopup(selectedSort: ContentSort) {
|
||||
private fun showAllSortPopup(state: MainContentAllTabUiState) {
|
||||
val sortOptions = state.selectedType.contentAllSortOptions()
|
||||
sortPopup?.dismiss()
|
||||
sortPopup = CreatorChannelSortPopup(
|
||||
anchor = binding.layoutContentAllSortButton,
|
||||
selectedSort = selectedSort,
|
||||
selectedSort = state.selectedSort,
|
||||
sortOptions = sortOptions,
|
||||
onSortSelected = { sort ->
|
||||
if (sort in ContentSort.entries) {
|
||||
if (sort in sortOptions) {
|
||||
contentAllTabViewModel.changeSort(sort)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,24 +69,10 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/layout_content_all_day_filter">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_content_all_total_label"
|
||||
style="@style/Typography.Body2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:includeFontPadding="false"
|
||||
android:text="@string/screen_content_tab_all"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_content_all_total_count"
|
||||
style="@style/Typography.Body2"
|
||||
<Space
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/spacing_4"
|
||||
android:layout_weight="1"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/gray_500" />
|
||||
android:layout_weight="1" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/layout_content_all_sort_button"
|
||||
|
||||
@@ -97,12 +97,11 @@ class ContentMainFragmentSourceTest {
|
||||
assertTrue(selectedDayBackground.contains("@dimen/radius_8"))
|
||||
assertTrue(fragmentLayout.contains("@+id/layout_content_all_sort_bar"))
|
||||
assertTrue(fragmentLayout.contains("android:layout_height=\"52dp\""))
|
||||
assertTrue(fragmentLayout.contains("@+id/tv_content_all_total_label"))
|
||||
assertTrue(fragmentLayout.contains("android:text=\"@string/screen_content_tab_all\""))
|
||||
assertTrue(fragmentLayout.contains("android:textColor=\"@color/white\""))
|
||||
assertTrue(fragmentLayout.contains("@+id/tv_content_all_total_count"))
|
||||
assertTrue(fragmentLayout.contains("style=\"@style/Typography.Body2\""))
|
||||
assertTrue(fragmentLayout.contains("android:textColor=\"@color/gray_500\""))
|
||||
assertFalse(fragmentLayout.contains("@+id/tv_content_all_total_label"))
|
||||
assertFalse(fragmentLayout.contains("android:text=\"@string/screen_content_tab_all\""))
|
||||
assertFalse(fragmentLayout.contains("@+id/tv_content_all_total_count"))
|
||||
assertTrue(fragmentLayout.contains("<Space"))
|
||||
assertTrue(fragmentLayout.contains("android:layout_weight=\"1\""))
|
||||
assertTrue(fragmentLayout.contains("@+id/layout_content_all_sort_button"))
|
||||
assertTrue(fragmentLayout.contains("android:layout_height=\"match_parent\""))
|
||||
assertTrue(fragmentLayout.contains("@+id/tv_content_all_sort_label"))
|
||||
@@ -131,7 +130,8 @@ class ContentMainFragmentSourceTest {
|
||||
assertFalse(source.contains("screen_content_all_type_all"))
|
||||
assertFalse(source.contains("screen_content_all_type_serialized"))
|
||||
assertTrue(source.contains("CreatorChannelSortPopup"))
|
||||
assertTrue(source.contains("ContentSort.entries"))
|
||||
assertTrue(source.contains("state.selectedType.contentAllSortOptions()"))
|
||||
assertTrue(source.contains("sortOptions = sortOptions"))
|
||||
assertTrue(source.contains("toLabelResId()"))
|
||||
assertTrue(source.contains("contentAllDayOfWeekOptions"))
|
||||
assertTrue(source.contains("toContentAllDayLabelResId()"))
|
||||
@@ -221,7 +221,7 @@ class ContentMainFragmentSourceTest {
|
||||
assertSourceContains(source, "binding.viewContentAllTypeTabs.root.setMenus")
|
||||
assertSourceContains(source, "binding.layoutContentAllDayFilter.visibility")
|
||||
assertSourceContains(source, "binding.tvContentAllSortLabel.setText")
|
||||
assertSourceContains(source, "binding.tvContentAllTotalCount.text")
|
||||
assertFalse(source.contains("binding.tvContentAllTotalCount.text"))
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user