2025-08-12 21:20:20 +07:00

101 lines
2.6 KiB
Dart

import 'package:flutter/material.dart';
import '../../../../common/theme/theme.dart';
import 'divider.dart';
import 'profile_switch_tile.dart';
import 'profile_tile.dart';
class ProfileAppSetting extends StatefulWidget {
const ProfileAppSetting({super.key});
@override
State<ProfileAppSetting> createState() => _ProfileAppSettingState();
}
class _ProfileAppSettingState extends State<ProfileAppSetting> {
bool _notificationsEnabled = true;
bool _darkModeEnabled = false;
@override
Widget build(BuildContext context) {
return Container(
margin: EdgeInsets.symmetric(horizontal: AppValue.margin),
decoration: BoxDecoration(
color: AppColor.surface,
borderRadius: BorderRadius.circular(12),
boxShadow: [
BoxShadow(
color: Colors.black.withOpacity(0.05),
blurRadius: 10,
offset: const Offset(0, 2),
),
],
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: EdgeInsets.all(16),
child: Text(
'App Settings',
style: AppStyle.xl.copyWith(
fontSize: 18,
fontWeight: FontWeight.bold,
color: AppColor.textPrimary,
),
),
),
ProfileSwitchTile(
icon: Icons.notifications_outlined,
title: 'Notifications',
subtitle: 'Receive app notifications',
value: _notificationsEnabled,
onChanged: (value) {
setState(() {
_notificationsEnabled = value;
});
},
),
ProfileDivider(),
ProfileSwitchTile(
icon: Icons.dark_mode_outlined,
title: 'Dark Mode',
subtitle: 'Switch to dark theme',
value: _darkModeEnabled,
onChanged: (value) {
setState(() {
_darkModeEnabled = value;
});
},
),
ProfileDivider(),
ProfileTile(
icon: Icons.language_outlined,
title: 'Language',
subtitle: 'English (US)',
onTap: () {
// Show language selector
},
),
ProfileDivider(),
ProfileTile(
icon: Icons.security_outlined,
title: 'Security & Privacy',
subtitle: 'Manage your security settings',
onTap: () {
// Navigate to security settings
},
),
],
),
);
}
}