From 4b3474ff428c949365efbf5fab75d1ebaea28417 Mon Sep 17 00:00:00 2001 From: klaus Date: Tue, 14 May 2024 17:06:12 +0900 Subject: [PATCH] =?UTF-8?q?=EB=9D=BC=EC=9D=B4=EB=B8=8C=20=EB=B0=A9=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1=20-=20=ED=81=AC=EB=A6=AC=EC=97=90=EC=9D=B4?= =?UTF-8?q?=ED=84=B0=20=EC=9E=85=EC=9E=A5=20=EA=B0=80=EB=8A=A5=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- .../live/room/create/CreateLiveRoomRequest.kt | 3 +- .../room/create/LiveRoomCreateActivity.kt | 48 ++++++++++++ .../room/create/LiveRoomCreateViewModel.kt | 11 ++- .../res/layout/activity_live_room_create.xml | 76 +++++++++++++++++++ 5 files changed, 138 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 5aa88dd7..cbf3717d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -40,8 +40,8 @@ android { applicationId "kr.co.vividnext.sodalive" minSdk 23 targetSdk 33 - versionCode 69 - versionName "1.11.0" + versionCode 71 + versionName "1.11.1" } buildTypes { diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/CreateLiveRoomRequest.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/CreateLiveRoomRequest.kt index fb15fda4..1ddbd39d 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/CreateLiveRoomRequest.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/CreateLiveRoomRequest.kt @@ -17,5 +17,6 @@ data class CreateLiveRoomRequest( @SerializedName("password") val password: String? = null, @SerializedName("menuPanId") val menuPanId: Long = 0, @SerializedName("menuPan") val menuPan: String = "", - @SerializedName("isActiveMenuPan") val isActiveMenuPan: Boolean = false + @SerializedName("isActiveMenuPan") val isActiveMenuPan: Boolean = false, + @SerializedName("isAvailableJoinCreator") val isAvailableJoinCreator: Boolean = true ) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateActivity.kt index 7fa98a81..2cdb31bf 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateActivity.kt @@ -322,6 +322,14 @@ class LiveRoomCreateActivity : BaseActivity( binding.llSelectMenu3.setOnClickListener { viewModel.selectMenuPreset(LiveRoomCreateViewModel.SelectedMenu.MENU_3) } + + binding.llAvailableJoinCreatorY.setOnClickListener { + viewModel.setAvailableJoinCreator(true) + } + + binding.llAvailableJoinCreatorN.setOnClickListener { + viewModel.setAvailableJoinCreator(false) + } } @SuppressLint("SetTextI18n") @@ -647,6 +655,46 @@ class LiveRoomCreateActivity : BaseActivity( viewModel.menuLiveData.observe(this) { binding.etMenu.setText(it) } + + viewModel.isAvailableJoinCreatorLiveData.observe(this) { + if (it) { + binding.ivAvailableJoinCreatorN.visibility = View.GONE + binding.llAvailableJoinCreatorN.setBackgroundResource(R.drawable.bg_round_corner_6_7_13181b) + binding.tvAvailableJoinCreatorN.setTextColor( + ContextCompat.getColor( + applicationContext, + R.color.color_3bb9f1 + ) + ) + + binding.ivAvailableJoinCreatorY.visibility = View.VISIBLE + binding.llAvailableJoinCreatorY.setBackgroundResource(R.drawable.bg_round_corner_6_7_3bb9f1) + binding.tvAvailableJoinCreatorY.setTextColor( + ContextCompat.getColor( + applicationContext, + R.color.color_eeeeee + ) + ) + } else { + binding.ivAvailableJoinCreatorY.visibility = View.GONE + binding.llAvailableJoinCreatorY.setBackgroundResource(R.drawable.bg_round_corner_6_7_13181b) + binding.tvAvailableJoinCreatorY.setTextColor( + ContextCompat.getColor( + applicationContext, + R.color.color_3bb9f1 + ) + ) + + binding.ivAvailableJoinCreatorN.visibility = View.VISIBLE + binding.llAvailableJoinCreatorN.setBackgroundResource(R.drawable.bg_round_corner_6_7_3bb9f1) + binding.tvAvailableJoinCreatorN.setTextColor( + ContextCompat.getColor( + applicationContext, + R.color.color_eeeeee + ) + ) + } + } } } diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateViewModel.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateViewModel.kt index f9b36ce9..cba79db0 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateViewModel.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/room/create/LiveRoomCreateViewModel.kt @@ -71,6 +71,10 @@ class LiveRoomCreateViewModel( val isActivateMenuLiveData: LiveData get() = _isActivateMenuLiveData + private val _isAvailableJoinCreatorLiveData = MutableLiveData(true) + val isAvailableJoinCreatorLiveData: LiveData + get() = _isAvailableJoinCreatorLiveData + private val _menuLiveData = MutableLiveData("") val menuLiveData: LiveData get() = _menuLiveData @@ -147,7 +151,8 @@ class LiveRoomCreateViewModel( } else { "" }, - isActiveMenuPan = _isActivateMenuLiveData.value!! + isActiveMenuPan = _isActivateMenuLiveData.value!!, + isAvailableJoinCreator = _isAvailableJoinCreatorLiveData.value!! ) val requestJson = Gson().toJson(request) @@ -255,6 +260,10 @@ class LiveRoomCreateViewModel( _isAdultLiveData.value = isAdult } + fun setAvailableJoinCreator(isAvailableJoinCreator: Boolean) { + _isAvailableJoinCreatorLiveData.value = isAvailableJoinCreator + } + fun getRecentInfo(onSuccess: (GetRecentRoomInfoResponse) -> Unit) { _isLoading.value = true compositeDisposable.add( diff --git a/app/src/main/res/layout/activity_live_room_create.xml b/app/src/main/res/layout/activity_live_room_create.xml index 23d90300..70a57060 100644 --- a/app/src/main/res/layout/activity_live_room_create.xml +++ b/app/src/main/res/layout/activity_live_room_create.xml @@ -685,6 +685,82 @@ tools:ignore="LabelFor,TextFields" /> + + + + + + + + + + + + + + + + + + +