v0.3.5: True Touch Drag & Drop Reordering & Fix OTA Auto-Install Bug

This commit is contained in:
sanjeok77 committed 2026-08-25 02:10:51 +00:00
1 parent bde24a319e
commit 9e0a9d7476
1 file changed
+20 -5
@@ -140,8 +140,17 @@ fun SettingsScreen(viewModel: MainViewModel) {
permissionStatus = permissionStatus,
currentPollingInterval = currentPollingInterval,
onRequestPermission = {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
notificationPermissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS)
if (!permissionStatus.hasNotificationPermission) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
notificationPermissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS)
} else {
PermissionHelper.openNotificationSettings(context)
}
} else if (!permissionStatus.hasExactAlarmPermission) {
permissionDialogTitle = "알람 및 리마인더 권한 필요"
permissionDialogMessage = "화면이 꺼져있을 때도 실시간 핫딜 알림을 받으려면 '알람 및 리마인더' 권한 허용이 필요합니다."
permissionDialogAction = { PermissionHelper.openExactAlarmSettings(context) }
showPermissionDialog = true
}
}
)
@@ -216,13 +225,19 @@ private fun NotificationTab(
Text("실시간 모니터링 요약", style = MaterialTheme.typography.titleSmall, fontWeight = FontWeight.Bold)
}
Spacer(modifier = Modifier.height(10.dp))
val isPermissionOk = permissionStatus.hasNotificationPermission && permissionStatus.hasExactAlarmPermission
val permText = when {
!permissionStatus.hasNotificationPermission -> "알림권한 필요"
!permissionStatus.hasExactAlarmPermission -> "알람권한 필요"
else -> "실시간 가동"
}
Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(8.dp)) {
BentoMiniTile(
title = "알림 상태",
value = if (permissionStatus.hasNotificationPermission) "정상 가동" else "권한 필요",
isHighlight = !permissionStatus.hasNotificationPermission,
value = permText,
isHighlight = !isPermissionOk,
modifier = Modifier.weight(1f),
onClick = if (!permissionStatus.hasNotificationPermission) onRequestPermission else null
onClick = if (!isPermissionOk) onRequestPermission else null
)
BentoMiniTile(title = "감시 주기", value = "${currentPollingInterval}분 간격", modifier = Modifier.weight(1f))
}