fix(live-room): 채팅 얼림 토글 UI와 안내 문구를 정렬한다

This commit is contained in:
2026-03-20 14:27:24 +09:00
parent a4ba3088b0
commit 3a14bad2a4
6 changed files with 92 additions and 60 deletions

View File

@@ -275,27 +275,13 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
}
private fun updateChatFreezeToggleUi() {
if (isChatFrozen) {
binding.tvChatFreezeSwitch.text = getString(R.string.screen_live_room_chat_freeze_on_label)
binding.tvChatFreezeSwitch.setTextColor(
ContextCompat.getColor(
applicationContext,
R.color.color_3bb9f1
)
)
binding.tvChatFreezeSwitch
.setBackgroundResource(R.drawable.bg_round_corner_5_3_transparent_3bb9f1)
} else {
binding.tvChatFreezeSwitch.text = getString(R.string.screen_live_room_chat_freeze_off_label)
binding.tvChatFreezeSwitch.setTextColor(
ContextCompat.getColor(
applicationContext,
R.color.color_eeeeee
)
)
binding.tvChatFreezeSwitch
.setBackgroundResource(R.drawable.bg_round_corner_5_3_transparent_bbbbbb)
}
binding.tvChatFreezeSwitch.setBackgroundResource(
if (isChatFrozen) {
R.drawable.bg_round_corner_10_803bb9f1
} else {
R.drawable.bg_round_corner_10_99525252
}
)
}
private fun showChatFreezeWarning() {
@@ -306,15 +292,16 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
).show()
}
private fun buildChatFreezeStatusMessage(isFrozen: Boolean, actorNickname: String): String {
return getString(
if (isFrozen) {
R.string.screen_live_room_chat_freeze_started
private fun buildChatFreezeStatusMessage(isFrozen: Boolean, isForHost: Boolean): String {
return if (isFrozen) {
if (isForHost) {
"“🧊 모두들 얼음!” 채팅창을 얼렸습니다."
} else {
R.string.screen_live_room_chat_freeze_ended
},
actorNickname
)
"“🧊 모두들 얼음!” 채팅창이 얼었습니다."
}
} else {
"“💧땡! “ 채팅창 얼리기가 해제되었습니다."
}
}
private fun addChatFreezeStatusMessage(message: String) {
@@ -338,7 +325,7 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
val noticeMessage = buildChatFreezeStatusMessage(
isFrozen = nextChatFrozen,
actorNickname = SharedPreferenceManager.nickname
isForHost = true
)
addChatFreezeStatusMessage(noticeMessage)
@@ -347,7 +334,7 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
rawMessage = Gson().toJson(
LiveRoomChatRawMessage(
type = LiveRoomChatRawMessageType.TOGGLE_CHAT_FREEZE,
message = noticeMessage,
message = "",
can = 0,
donationMessage = "",
isChatFrozen = nextChatFrozen
@@ -1245,7 +1232,10 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
if (!isHost && response.isChatFrozen && !hasShownInitialChatFreezeNotice) {
addChatFreezeStatusMessage(
getString(R.string.screen_live_room_chat_freeze_started)
buildChatFreezeStatusMessage(
isFrozen = true,
isForHost = false
)
)
hasShownInitialChatFreezeNotice = true
}
@@ -2342,16 +2332,10 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB
val frozen = message.isChatFrozen ?: false
setChatFrozenState(frozen)
val statusMessage = if (message.message.isNotBlank()) {
message.message
} else {
buildChatFreezeStatusMessage(
isFrozen = frozen,
actorNickname = nickname.ifBlank {
viewModel.getManagerNickname()
}
)
}
val statusMessage = buildChatFreezeStatusMessage(
isFrozen = frozen,
isForHost = false
)
addChatFreezeStatusMessage(statusMessage)
}