mirror of
https://github.com/smmarty/friflex_flutter_starter.git
synced 2025-12-22 01:20:46 +00:00
fix: исправил ширину строки
This commit is contained in:
@@ -56,13 +56,19 @@ class AppColors extends ThemeExtension<AppColors> with DiagnosticableTreeMixin {
|
||||
Color? infoSnackbarBackground,
|
||||
}) => AppColors(
|
||||
testColor: testColor ?? this.testColor,
|
||||
errorSnackbarBackground: errorSnackbarBackground ?? this.errorSnackbarBackground,
|
||||
successSnackbarBackground: successSnackbarBackground ?? this.successSnackbarBackground,
|
||||
infoSnackbarBackground: infoSnackbarBackground ?? this.infoSnackbarBackground,
|
||||
errorSnackbarBackground:
|
||||
errorSnackbarBackground ?? this.errorSnackbarBackground,
|
||||
successSnackbarBackground:
|
||||
successSnackbarBackground ?? this.successSnackbarBackground,
|
||||
infoSnackbarBackground:
|
||||
infoSnackbarBackground ?? this.infoSnackbarBackground,
|
||||
);
|
||||
|
||||
@override
|
||||
ThemeExtension<AppColors> lerp(covariant ThemeExtension<AppColors>? other, double t) {
|
||||
ThemeExtension<AppColors> lerp(
|
||||
covariant ThemeExtension<AppColors>? other,
|
||||
double t,
|
||||
) {
|
||||
if (other is! AppColors) return this;
|
||||
|
||||
return AppColors(
|
||||
@@ -77,7 +83,11 @@ class AppColors extends ThemeExtension<AppColors> with DiagnosticableTreeMixin {
|
||||
other.successSnackbarBackground,
|
||||
t,
|
||||
)!,
|
||||
infoSnackbarBackground: Color.lerp(infoSnackbarBackground, other.infoSnackbarBackground, t)!,
|
||||
infoSnackbarBackground: Color.lerp(
|
||||
infoSnackbarBackground,
|
||||
other.infoSnackbarBackground,
|
||||
t,
|
||||
)!,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,10 +4,12 @@ import 'package:friflex_starter/app/theme/app_colors_scheme.dart';
|
||||
/// Класс для конфигурации светлой/темной темы приложения
|
||||
abstract class AppTheme {
|
||||
/// Геттер для получения светлой темы
|
||||
static ThemeData get light =>
|
||||
ThemeData.light().copyWith(extensions: <ThemeExtension<Object?>>[AppColors.light]);
|
||||
static ThemeData get light => ThemeData.light().copyWith(
|
||||
extensions: <ThemeExtension<Object?>>[AppColors.light],
|
||||
);
|
||||
|
||||
/// Геттер для получения темной темы
|
||||
static ThemeData get dark =>
|
||||
ThemeData.dark().copyWith(extensions: <ThemeExtension<Object?>>[AppColors.dark]);
|
||||
static ThemeData get dark => ThemeData.dark().copyWith(
|
||||
extensions: <ThemeExtension<Object?>>[AppColors.dark],
|
||||
);
|
||||
}
|
||||
|
||||
@@ -139,7 +139,8 @@ class AppSnackBar extends StatefulWidget {
|
||||
}
|
||||
}
|
||||
|
||||
class _AppSnackBarState extends State<AppSnackBar> with SingleTickerProviderStateMixin {
|
||||
class _AppSnackBarState extends State<AppSnackBar>
|
||||
with SingleTickerProviderStateMixin {
|
||||
late AnimationController _animationController;
|
||||
late Animation<double> _slideAnimation;
|
||||
Timer? _dismissTimer;
|
||||
@@ -174,10 +175,10 @@ class _AppSnackBarState extends State<AppSnackBar> with SingleTickerProviderStat
|
||||
// Конечная позиция снекбара - 15 пикселей ниже верхнего отступа
|
||||
final endPosition = topPadding + 15;
|
||||
// Создание анимации с использованием Tween
|
||||
_slideAnimation = Tween<double>(
|
||||
begin: startPosition,
|
||||
end: endPosition,
|
||||
).animate(CurvedAnimation(parent: _animationController, curve: Curves.easeOut));
|
||||
_slideAnimation = Tween<double>(begin: startPosition, end: endPosition)
|
||||
.animate(
|
||||
CurvedAnimation(parent: _animationController, curve: Curves.easeOut),
|
||||
);
|
||||
|
||||
_animationController.forward();
|
||||
}
|
||||
@@ -231,7 +232,10 @@ class _AppSnackBarState extends State<AppSnackBar> with SingleTickerProviderStat
|
||||
color: _getBackgroundColor(widget.type),
|
||||
borderRadius: BorderRadius.circular(16),
|
||||
),
|
||||
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 12,
|
||||
horizontal: 16,
|
||||
),
|
||||
child: Row(
|
||||
children: [
|
||||
_Icon(type: widget.type),
|
||||
@@ -284,7 +288,11 @@ class _Icon extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return switch (type) {
|
||||
TypeSnackBar.success => Icon(Icons.check_circle, color: Colors.white, size: 32),
|
||||
TypeSnackBar.success => Icon(
|
||||
Icons.check_circle,
|
||||
color: Colors.white,
|
||||
size: 32,
|
||||
),
|
||||
TypeSnackBar.error => Icon(Icons.error, color: Colors.white, size: 32),
|
||||
TypeSnackBar.info => Icon(Icons.info, color: Colors.white, size: 32),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user