Files
tm_app/lib/views/profile/widgets/theme_toggle.dart
T
amirrezaghabeli 4b51071aad merge branches
2025-08-20 13:11:22 +03:30

47 lines
1.1 KiB
Dart

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../../../core/theme/colors.dart';
import '../../../core/theme/theme_provider.dart';
class ThemeToggle extends StatelessWidget {
const ThemeToggle({super.key});
@override
Widget build(BuildContext context) {
final themeProvider = context.watch<ThemeProvider>();
return Switch(
value: themeProvider.isDarkMode,
onChanged: (value) {
themeProvider.toggleTheme();
},
activeColor: AppColors.primaryColor,
);
}
}
// Simple icon button version
class ThemeToggleButton extends StatelessWidget {
const ThemeToggleButton({super.key});
@override
Widget build(BuildContext context) {
final themeProvider = context.watch<ThemeProvider>();
return IconButton(
icon: Icon(
themeProvider.isDarkMode ? Icons.light_mode : Icons.dark_mode,
color: AppColors.primaryTextColor,
),
onPressed: () {
themeProvider.toggleTheme();
},
tooltip:
themeProvider.isDarkMode
? 'Switch to Light Mode'
: 'Switch to Dark Mode',
);
}
}