refactor(modal): V2 확인 모달 사용처를 교체한다
This commit is contained in:
@@ -6,14 +6,12 @@ import android.animation.ValueAnimator
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.graphics.Color
|
||||
import android.view.Gravity
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.View.MeasureSpec
|
||||
import android.view.animation.Interpolator
|
||||
import android.widget.LinearLayout
|
||||
import androidx.activity.result.contract.ActivityResultContracts
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
@@ -31,7 +29,6 @@ import kr.co.vividnext.sodalive.audio_content.detail.AudioContentDetailActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.upload.AudioContentUploadActivity
|
||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||
import kr.co.vividnext.sodalive.base.SodaDialog
|
||||
import kr.co.vividnext.sodalive.chat.talk.room.ChatRoomActivity
|
||||
import kr.co.vividnext.sodalive.common.Constants
|
||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||
@@ -53,9 +50,11 @@ import kr.co.vividnext.sodalive.mypage.MyPageViewModel
|
||||
import kr.co.vividnext.sodalive.mypage.auth.Auth
|
||||
import kr.co.vividnext.sodalive.mypage.auth.AuthVerifyRequest
|
||||
import kr.co.vividnext.sodalive.mypage.auth.BootpayResponse
|
||||
import kr.co.vividnext.sodalive.report.ProfileReportDialog
|
||||
import kr.co.vividnext.sodalive.report.UserReportDialog
|
||||
import kr.co.vividnext.sodalive.settings.ContentSettingsActivity
|
||||
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||
import kr.co.vividnext.sodalive.user.login.LoginActivity
|
||||
import kr.co.vividnext.sodalive.v2.components.modal.V2ModalDialog
|
||||
import kr.co.vividnext.sodalive.v2.common.CreatorActivityType
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.CreatorChannelAudioFragment
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.community.CreatorChannelCommunityFragment
|
||||
@@ -75,8 +74,6 @@ import kr.co.vividnext.sodalive.v2.creator.channel.model.CreatorChannelTitleBarS
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.series.CreatorChannelSeriesFragment
|
||||
import kr.co.vividnext.sodalive.v2.main.MainV2Activity
|
||||
import kr.co.vividnext.sodalive.v2.main.chat.dm.DmChatRoomActivity
|
||||
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||
import kr.co.vividnext.sodalive.user.login.LoginActivity
|
||||
import okhttp3.MediaType.Companion.toMediaType
|
||||
import okhttp3.RequestBody.Companion.toRequestBody
|
||||
import org.koin.android.ext.android.inject
|
||||
@@ -383,14 +380,18 @@ class CreatorChannelActivity :
|
||||
|
||||
private fun showUserBlockDialog() {
|
||||
val nickname = currentHeader?.nickname.orEmpty()
|
||||
AlertDialog.Builder(this)
|
||||
.setTitle(getString(R.string.screen_live_room_block_title))
|
||||
.setMessage(getString(R.string.screen_live_room_block_message_user, nickname))
|
||||
.setPositiveButton(getString(R.string.screen_live_room_block_confirm)) { _, _ ->
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.screen_live_room_block_title),
|
||||
desc = getString(R.string.screen_live_room_block_message_user, nickname),
|
||||
confirmButtonTitle = getString(R.string.screen_live_room_block_confirm),
|
||||
confirmButtonClick = {
|
||||
homeActionDelegate?.blockUser()
|
||||
}
|
||||
.setNegativeButton(getString(R.string.cancel)) { _, _ -> }
|
||||
.show()
|
||||
},
|
||||
cancelButtonTitle = getString(R.string.cancel),
|
||||
cancelButtonClick = {}
|
||||
).show(screenWidth)
|
||||
}
|
||||
|
||||
private fun showUserReportDialog() {
|
||||
@@ -400,9 +401,18 @@ class CreatorChannelActivity :
|
||||
}
|
||||
|
||||
private fun showProfileReportDialog() {
|
||||
ProfileReportDialog(this, layoutInflater) {
|
||||
homeActionDelegate?.reportProfile()
|
||||
}.show(resources.displayMetrics.widthPixels)
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.dialog_profile_report_title),
|
||||
desc = getString(R.string.dialog_profile_report_notice),
|
||||
confirmButtonTitle = getString(R.string.report_button),
|
||||
confirmButtonClick = {
|
||||
homeActionDelegate?.reportProfile()
|
||||
},
|
||||
cancelButtonTitle = getString(R.string.cancel),
|
||||
cancelButtonClick = {}
|
||||
).show(resources.displayMetrics.widthPixels)
|
||||
}
|
||||
|
||||
private fun setupTabsAndPager() {
|
||||
@@ -604,7 +614,7 @@ class CreatorChannelActivity :
|
||||
}
|
||||
|
||||
override fun onCreatorChannelFanTalkDeleteClicked(fanTalkId: Long) {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.screen_user_profile_cheer_delete_title),
|
||||
@@ -640,7 +650,7 @@ class CreatorChannelActivity :
|
||||
}
|
||||
|
||||
private fun showCreatorChannelCommunityDeleteDialog(item: CreatorChannelCommunityPostUiModel) {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.screen_creator_community_delete_title),
|
||||
@@ -977,7 +987,7 @@ class CreatorChannelActivity :
|
||||
if (isAdult) {
|
||||
val isKoreanCountry = SharedPreferenceManager.countryCode.ifBlank { "KR" } == "KR"
|
||||
if (isKoreanCountry && !SharedPreferenceManager.isAuth) {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.auth_title),
|
||||
@@ -985,8 +995,7 @@ class CreatorChannelActivity :
|
||||
confirmButtonTitle = getString(R.string.auth_go),
|
||||
confirmButtonClick = { startAuthFlow() },
|
||||
cancelButtonTitle = getString(R.string.cancel),
|
||||
cancelButtonClick = {},
|
||||
descGravity = Gravity.CENTER
|
||||
cancelButtonClick = {}
|
||||
).show(screenWidth)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package kr.co.vividnext.sodalive.v2.creator.channel.fantalk.write
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.text.InputFilter
|
||||
import android.view.Gravity
|
||||
import android.view.inputmethod.InputMethodManager
|
||||
import android.widget.Toast
|
||||
import androidx.activity.addCallback
|
||||
@@ -13,8 +12,8 @@ import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.core.widget.addTextChangedListener
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||
import kr.co.vividnext.sodalive.base.SodaDialog
|
||||
import kr.co.vividnext.sodalive.databinding.ActivityCreatorChannelFantalkWriteBinding
|
||||
import kr.co.vividnext.sodalive.v2.components.modal.V2ModalDialog
|
||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||
|
||||
class CreatorChannelFanTalkWriteActivity : BaseActivity<ActivityCreatorChannelFantalkWriteBinding>(
|
||||
@@ -121,7 +120,7 @@ class CreatorChannelFanTalkWriteActivity : BaseActivity<ActivityCreatorChannelFa
|
||||
}
|
||||
|
||||
private fun showCancelConfirmDialog() {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.creator_channel_fantalk_write_exit_title),
|
||||
@@ -129,8 +128,7 @@ class CreatorChannelFanTalkWriteActivity : BaseActivity<ActivityCreatorChannelFa
|
||||
confirmButtonTitle = getString(R.string.creator_channel_fantalk_write_exit_confirm),
|
||||
confirmButtonClick = { finish() },
|
||||
cancelButtonTitle = getString(R.string.creator_channel_fantalk_write_exit_cancel),
|
||||
cancelButtonClick = {},
|
||||
descGravity = Gravity.CENTER
|
||||
cancelButtonClick = {}
|
||||
).show(screenWidth)
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package kr.co.vividnext.sodalive.v2.live.onair
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.view.Gravity
|
||||
import android.widget.Toast
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.media3.common.util.UnstableApi
|
||||
@@ -14,7 +13,6 @@ import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService
|
||||
import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerService
|
||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||
import kr.co.vividnext.sodalive.base.SodaDialog
|
||||
import kr.co.vividnext.sodalive.common.Constants
|
||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
@@ -34,6 +32,7 @@ import kr.co.vividnext.sodalive.settings.language.LanguageManager
|
||||
import kr.co.vividnext.sodalive.settings.language.LocaleHelper
|
||||
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||
import kr.co.vividnext.sodalive.user.login.LoginActivity
|
||||
import kr.co.vividnext.sodalive.v2.components.modal.V2ModalDialog
|
||||
import kr.co.vividnext.sodalive.v2.live.onair.model.HomeOnAirLivePageUiState
|
||||
import kr.co.vividnext.sodalive.v2.live.onair.model.canEnterHomeOnAirLiveRoom
|
||||
import kr.co.vividnext.sodalive.v2.live.onair.ui.HomeOnAirLiveAdapter
|
||||
@@ -183,7 +182,7 @@ class HomeOnAirLiveActivity : BaseActivity<ActivityHomeOnAirLiveBinding>(
|
||||
if (isAdult) {
|
||||
val isKoreanCountry = SharedPreferenceManager.countryCode.ifBlank { "KR" } == "KR"
|
||||
if (isKoreanCountry && !SharedPreferenceManager.isAuth) {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = this,
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.auth_title),
|
||||
@@ -191,8 +190,7 @@ class HomeOnAirLiveActivity : BaseActivity<ActivityHomeOnAirLiveBinding>(
|
||||
confirmButtonTitle = getString(R.string.auth_go),
|
||||
confirmButtonClick = { startAuthFlow() },
|
||||
cancelButtonTitle = getString(R.string.cancel),
|
||||
cancelButtonClick = {},
|
||||
descGravity = Gravity.CENTER
|
||||
cancelButtonClick = {}
|
||||
).show(screenWidth)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
package kr.co.vividnext.sodalive.v2.main
|
||||
|
||||
import android.content.Intent
|
||||
import android.view.Gravity
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.google.gson.Gson
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.base.SodaDialog
|
||||
import kr.co.vividnext.sodalive.common.Constants
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.mypage.MyPageViewModel
|
||||
@@ -14,6 +12,7 @@ import kr.co.vividnext.sodalive.mypage.auth.AuthVerifyRequest
|
||||
import kr.co.vividnext.sodalive.mypage.auth.BootpayResponse
|
||||
import kr.co.vividnext.sodalive.settings.ContentSettingsActivity
|
||||
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||
import kr.co.vividnext.sodalive.v2.components.modal.V2ModalDialog
|
||||
import org.koin.android.ext.android.get
|
||||
|
||||
fun Fragment.ensureMainV2NavigationAllowed(
|
||||
@@ -46,7 +45,7 @@ fun Fragment.ensureMainV2NavigationAllowed(
|
||||
}
|
||||
|
||||
private fun Fragment.showMainV2AuthDialog() {
|
||||
SodaDialog(
|
||||
V2ModalDialog(
|
||||
activity = requireActivity(),
|
||||
layoutInflater = layoutInflater,
|
||||
title = getString(R.string.auth_title),
|
||||
@@ -54,8 +53,7 @@ private fun Fragment.showMainV2AuthDialog() {
|
||||
confirmButtonTitle = getString(R.string.auth_go),
|
||||
confirmButtonClick = { startMainV2AuthFlow() },
|
||||
cancelButtonTitle = getString(R.string.cancel),
|
||||
cancelButtonClick = {},
|
||||
descGravity = Gravity.CENTER
|
||||
cancelButtonClick = {}
|
||||
).show(resources.displayMetrics.widthPixels)
|
||||
}
|
||||
|
||||
|
||||
@@ -85,6 +85,10 @@ class CreatorChannelActivitySourceTest {
|
||||
assertTrue(source.contains("showUserReportDialog"))
|
||||
assertTrue(source.contains("showProfileReportDialog"))
|
||||
assertTrue(source.contains("homeActionDelegate?.blockUser"))
|
||||
assertTrue(source.contains("V2ModalDialog("))
|
||||
assertFalse(source.contains("AlertDialog.Builder("))
|
||||
assertFalse(source.contains("import kr.co.vividnext.sodalive.report.ProfileReportDialog"))
|
||||
assertFalse(source.contains("ProfileReportDialog(this, layoutInflater)"))
|
||||
assertFalse(source.contains("creator_channel_more_ready"))
|
||||
assertTrue(sheet.contains("BottomSheetDialogFragment"))
|
||||
assertTrue(sheet.contains("onClickBlock"))
|
||||
@@ -599,7 +603,8 @@ class CreatorChannelActivitySourceTest {
|
||||
assertTrue(source.contains("position == CreatorChannelTab.FanTalk.ordinal"))
|
||||
assertTrue(source.contains("override fun onCreatorChannelFanTalkContentChanged()"))
|
||||
assertTrue(source.contains("override fun onCreatorChannelFanTalkDeleteClicked(fanTalkId: Long)"))
|
||||
assertTrue(source.contains("SodaDialog("))
|
||||
assertTrue(source.contains("V2ModalDialog("))
|
||||
assertFalse(source.contains("SodaDialog("))
|
||||
assertTrue(source.contains("R.string.screen_user_profile_cheer_delete_title"))
|
||||
assertTrue(source.contains("R.string.screen_user_profile_cheer_delete_desc"))
|
||||
assertTrue(source.contains("R.string.confirm_delete_title"))
|
||||
@@ -1371,7 +1376,8 @@ class CreatorChannelActivitySourceTest {
|
||||
assertTrue(activity.contains("liveCoordinator.enterLiveRoom(live.liveId)"))
|
||||
assertTrue(activity.contains("private fun ensureLoginAndAdultAuth(isAdult: Boolean, onAuthed: () -> Unit)"))
|
||||
assertTrue(activity.contains("SharedPreferenceManager.token.isBlank()"))
|
||||
assertTrue(activity.contains("SodaDialog("))
|
||||
assertTrue(activity.contains("V2ModalDialog("))
|
||||
assertFalse(activity.contains("SodaDialog("))
|
||||
assertTrue(activity.contains("R.string.auth_desc_live"))
|
||||
assertTrue(activity.contains("ContentSettingsActivity::class.java"))
|
||||
assertTrue(activity.contains("Constants.EXTRA_SHOW_SENSITIVE_CONTENT_GUIDE"))
|
||||
|
||||
@@ -23,6 +23,8 @@ class CreatorChannelFanTalkWriteSourceTest {
|
||||
assertTrue(source.contains("WindowInsetsCompat.Type.ime()"))
|
||||
assertTrue(source.contains("onBackPressedDispatcher.addCallback"))
|
||||
assertTrue(source.contains("showCancelConfirmDialog()"))
|
||||
assertTrue(source.contains("V2ModalDialog("))
|
||||
assertFalse(source.contains("SodaDialog("))
|
||||
assertTrue(source.contains("setResult(RESULT_OK)"))
|
||||
assertTrue(source.contains("viewModel.submit(creatorId)"))
|
||||
assertTrue(manifest.contains(".v2.creator.channel.fantalk.write.CreatorChannelFanTalkWriteActivity"))
|
||||
|
||||
@@ -17,7 +17,8 @@ class MainV2LoginGuardSourceTest {
|
||||
assertTrue(source.contains("(activity as? MainV2Activity)?.showLoginActivity()"))
|
||||
assertTrue(source.contains("SharedPreferenceManager.countryCode.ifBlank { \"KR\" }"))
|
||||
assertTrue(source.contains("SharedPreferenceManager.isAuth"))
|
||||
assertTrue(source.contains("SodaDialog("))
|
||||
assertTrue(source.contains("V2ModalDialog("))
|
||||
assertFalse(source.contains("SodaDialog("))
|
||||
assertTrue(source.contains("Auth.auth(requireActivity(), requireContext())"))
|
||||
assertTrue(source.contains("Gson().fromJson(json, BootpayResponse::class.java)"))
|
||||
assertTrue(source.contains("AuthVerifyRequest(receiptId = bootpayResponse.data.receiptId)"))
|
||||
|
||||
Reference in New Issue
Block a user