UI 문구 이모티콘 제거 + 계정 강제 삭제 아이콘 검정으로 통일

화면 타이틀, 스낵바/다이얼로그 메시지, 백그라운드 알림 문구 등
사용자에게 노출되는 텍스트에서 이모티콘을 전부 제거 (코드 주석은
대상 아님). 아이콘 위젯은 그대로 유지.

main_dashboard.dart의 "계정 강제 삭제" 타일 아이콘 색상도 빨간색
대신 다른 타일과 동일한 검정(AppPalette.ink)으로 통일.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-04 22:31:03 +09:00
co-authored by Claude Sonnet 5
parent dce5f1ad1b
commit 9089b9032e
22 changed files with 157 additions and 160 deletions
+11 -13
View File
@@ -43,9 +43,9 @@ class _LoginScreenState extends State<LoginScreen> {
_showErrorDialog(result.errorMessage!);
break;
case LoginOutcome.masterSuccess:
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text('👑 개발자 최고 권한으로 로그인되었습니다.')),
);
ScaffoldMessenger.of(
context,
).showSnackBar(const SnackBar(content: Text('개발자 최고 권한으로 로그인되었습니다.')));
Navigator.pushReplacement(
context,
MaterialPageRoute(
@@ -69,7 +69,7 @@ class _LoginScreenState extends State<LoginScreen> {
case LoginOutcome.success:
ScaffoldMessenger.of(
context,
).showSnackBar(SnackBar(content: Text('✅ ${result.name}님 환영합니다!')));
).showSnackBar(SnackBar(content: Text('${result.name}님 환영합니다!')));
_navigateBasedOnRole(
result.role!,
result.studentId!,
@@ -99,7 +99,7 @@ class _LoginScreenState extends State<LoginScreen> {
builder: (context, setDialogState) {
return AlertDialog(
title: const Text(
'🔒 초기 비밀번호 변경',
'초기 비밀번호 변경',
style: TextStyle(fontWeight: FontWeight.bold),
),
content: Column(
@@ -136,9 +136,7 @@ class _LoginScreenState extends State<LoginScreen> {
String newPassword = newPwController.text.trim();
if (newPassword.isEmpty) {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(
content: Text('⚠️ 새 비밀번호를 입력해 주세요.'),
),
const SnackBar(content: Text('새 비밀번호를 입력해 주세요.')),
);
return;
}
@@ -204,7 +202,7 @@ class _LoginScreenState extends State<LoginScreen> {
context: context,
builder: (ctx) => AlertDialog(
title: const Text(
'⚠️ 인증 실패',
'인증 실패',
style: TextStyle(fontWeight: FontWeight.bold),
),
content: Text(message),
@@ -229,7 +227,7 @@ class _LoginScreenState extends State<LoginScreen> {
barrierDismissible: false,
builder: (BuildContext dialogContext) {
return AlertDialog(
title: Text('🔒 $title 권한 인증 (기존 방식)'),
title: Text('$title 권한 인증 (기존 방식)'),
content: TextField(
controller: passwordController,
obscureText: true,
@@ -244,7 +242,7 @@ class _LoginScreenState extends State<LoginScreen> {
);
} else {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text('❌ 비밀번호가 올바르지 않습니다.')),
const SnackBar(content: Text('비밀번호가 올바르지 않습니다.')),
);
}
},
@@ -268,7 +266,7 @@ class _LoginScreenState extends State<LoginScreen> {
);
} else {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text('❌ 비밀번호가 올바르지 않습니다.')),
const SnackBar(content: Text('비밀번호가 올바르지 않습니다.')),
);
}
},
@@ -365,7 +363,7 @@ class _LoginScreenState extends State<LoginScreen> {
),
),
child: const Text(
'👨‍🏫 선생님이신가요? 교사 회원가입 하기',
'선생님이신가요? 교사 회원가입 하기',
style: TextStyle(
color: AppPalette.ink,
fontWeight: FontWeight.bold,