From 548e3e4aaa5093f1222b46b021298c82bb76c54b Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Thu, 22 May 2025 21:46:18 +0900 Subject: [PATCH 1/2] Implement action for inquiry button --- .../screen/settings/SettingsScreen.kt | 35 ++++++++++++++++++- presentation/src/main/res/values/strings.xml | 5 +-- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt index cc8ad657..23612fd3 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt @@ -1,5 +1,8 @@ package daily.dayo.presentation.screen.settings +import android.content.ClipData +import android.content.ClipboardManager +import android.content.Context import android.content.pm.PackageManager import android.os.Build import androidx.annotation.DrawableRes @@ -27,8 +30,11 @@ import androidx.compose.material3.Scaffold import androidx.compose.material3.TextButton import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue import androidx.compose.runtime.livedata.observeAsState +import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color.Companion.White @@ -53,6 +59,7 @@ import daily.dayo.presentation.theme.White_FFFFFF import daily.dayo.presentation.view.RoundImageView import daily.dayo.presentation.view.TopNavigation import daily.dayo.presentation.view.TopNavigationAlign +import daily.dayo.presentation.view.dialog.ConfirmDialog import daily.dayo.presentation.viewmodel.ProfileViewModel @Composable @@ -65,7 +72,10 @@ fun SettingsScreen( onNoticesClick: () -> Unit, profileViewModel: ProfileViewModel = hiltViewModel() ) { + val context = LocalContext.current val profileInfo = profileViewModel.profileInfo.observeAsState() + var showInquiryGuideDialog by remember { mutableStateOf(false) } + val inquiryEmail = stringResource(id = R.string.inquiry_email) LaunchedEffect(Unit) { profileViewModel.requestMyProfile() @@ -78,8 +88,21 @@ fun SettingsScreen( onSettingNotificationClick = onSettingNotificationClick, onPasswordChangeClick = onPasswordChangeClick, onNoticesClick = onNoticesClick, - onBlockUsersClick = onBlockUsersClick + onBlockUsersClick = onBlockUsersClick, + onInquiryClick = { + copyInquiryEmail(context, inquiryEmail) + showInquiryGuideDialog = true + }, ) + + if (showInquiryGuideDialog) { + ConfirmDialog( + title = stringResource(R.string.setting_contact_message), + description = stringResource(R.string.setting_contact_explanation_message), + onClickCancel = null, + onClickConfirm = { showInquiryGuideDialog = false }, + ) + } } @Composable @@ -91,6 +114,7 @@ private fun SettingsScreen( onPasswordChangeClick: () -> Unit, onNoticesClick: () -> Unit = {}, onBlockUsersClick: () -> Unit, + onInquiryClick: () -> Unit = {}, ) { Scaffold( topBar = { @@ -273,6 +297,15 @@ private fun SettingMenu( } } +fun copyInquiryEmail( + context: Context, + inquiryEmail: String, +) { + val clipboardManager = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager + val clipData = ClipData.newPlainText("inquiry_email", inquiryEmail) + clipboardManager.setPrimaryClip(clipData) +} + @Preview @Composable private fun PreviewSettingsScreen() { diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index 0db2453f..cd6f0c94 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -1,6 +1,7 @@ DAYO Dayo Logo + gemij.dev@gmail.com 피드 @@ -493,8 +494,8 @@ 계정을 로그아웃 할까요? 계정을 삭제할까요? 모든 정보가 삭제되며, 복구가 불가능합니다. - 메일 주소 복사 완료 - 클립보드에 저장된 메일 주소로 문의 주세요 + 메일 주소 복사 완료! + 클립보드에 저장된 메일 주소로 문의해 주세요. 비밀번호 변경 차단 관리 알림 From cb544b71e88ad58469e07a61eac58a1b323be8ad Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Mon, 2 Jun 2025 20:26:00 +0900 Subject: [PATCH 2/2] Change contact mail and add missing inquiry button action --- .../daily/dayo/presentation/screen/settings/SettingsScreen.kt | 2 +- presentation/src/main/res/values/strings.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt index 23612fd3..b554c496 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/settings/SettingsScreen.kt @@ -155,7 +155,7 @@ private fun SettingsScreen( null, // Divider SettingItem(R.string.setting_menu_notice, R.drawable.ic_setting_notice, onClickMenu = onNoticesClick), SettingItem(R.string.setting_menu_information, R.drawable.ic_setting_information, onClickMenu = {}, description = appVersion), - SettingItem(R.string.setting_menu_contact, R.drawable.ic_setting_contact, onClickMenu = {}), + SettingItem(R.string.setting_menu_contact, R.drawable.ic_setting_contact, onClickMenu = onInquiryClick), null // Divider ) diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index cd6f0c94..2b5cfe96 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -1,7 +1,7 @@ DAYO Dayo Logo - gemij.dev@gmail.com + dayo.jkhj@gmail.com 피드