From 205d90523c8afa0081e92fcca9767c68148d876d Mon Sep 17 00:00:00 2001 From: Kima Date: Thu, 12 Oct 2023 20:38:32 +0200 Subject: [PATCH] added check everywhere to shadow effect --- filcnaplo/lib/ui/filter/widgets.dart | 28 +++++++++-------- .../lib/ui/widgets/grade/grade_tile.dart | 27 ++++++++++------- .../lib/common/panel/panel.dart | 19 ++++++++---- .../common/personality_card/empty_card.dart | 16 ++++++---- .../lib/common/widgets/statistics_tile.dart | 30 +++++++++++++------ .../home/live_card/live_card_widget.dart | 18 ++++++----- 6 files changed, 87 insertions(+), 51 deletions(-) diff --git a/filcnaplo/lib/ui/filter/widgets.dart b/filcnaplo/lib/ui/filter/widgets.dart index 4986c34..79bf730 100644 --- a/filcnaplo/lib/ui/filter/widgets.dart +++ b/filcnaplo/lib/ui/filter/widgets.dart @@ -214,19 +214,21 @@ Widget filterItemBuilder( child: DecoratedBox( decoration: BoxDecoration( boxShadow: [ - BoxShadow( - offset: const Offset(0, 21), - blurRadius: 23.0, - color: Theme.of(context).shadowColor.withOpacity( - Theme.of(context).shadowColor.opacity * - CurvedAnimation( - parent: CurvedAnimation( - parent: animation, - curve: Curves.easeInOutCubic), - curve: const Interval(2 / 3, 1.0), - ).value, - ), - ), + if (Provider.of(context, listen: false) + .shadowEffect) + BoxShadow( + offset: const Offset(0, 21), + blurRadius: 23.0, + color: Theme.of(context).shadowColor.withOpacity( + Theme.of(context).shadowColor.opacity * + CurvedAnimation( + parent: CurvedAnimation( + parent: animation, + curve: Curves.easeInOutCubic), + curve: const Interval(2 / 3, 1.0), + ).value, + ), + ), ], ), child: child, diff --git a/filcnaplo/lib/ui/widgets/grade/grade_tile.dart b/filcnaplo/lib/ui/widgets/grade/grade_tile.dart index 50e0d3a..a2778e5 100644 --- a/filcnaplo/lib/ui/widgets/grade/grade_tile.dart +++ b/filcnaplo/lib/ui/widgets/grade/grade_tile.dart @@ -34,8 +34,7 @@ class GradeTile extends StatelessWidget { GradeCalculatorProvider calculatorProvider = Provider.of(context, listen: false); - SettingsProvider settingsProvider = - Provider.of(context); + SettingsProvider settingsProvider = Provider.of(context); // Test order: // description // mode @@ -50,7 +49,8 @@ class GradeTile extends StatelessWidget { } } else { title = subjectName; - isTitleItalic = grade.subject.isRenamed && settingsProvider.renamedSubjectsItalics; + isTitleItalic = + grade.subject.isRenamed && settingsProvider.renamedSubjectsItalics; } // Test order: @@ -62,7 +62,9 @@ class GradeTile extends StatelessWidget { ? modeDescription : "" : subjectName; - isSubtitleItalic = isSubjectView ? false : grade.subject.isRenamed && settingsProvider.renamedSubjectsItalics; + isSubtitleItalic = isSubjectView + ? false + : grade.subject.isRenamed && settingsProvider.renamedSubjectsItalics; } else { subtitle = grade.value.valueName.split("(")[0]; } @@ -127,9 +129,7 @@ class GradeTile extends StatelessWidget { overflow: TextOverflow.ellipsis, style: TextStyle( fontWeight: FontWeight.w600, - fontStyle: isTitleItalic - ? FontStyle.italic - : null), + fontStyle: isTitleItalic ? FontStyle.italic : null), ), subtitle: subtitle != "" ? censored @@ -149,7 +149,10 @@ class GradeTile extends StatelessWidget { subtitle, maxLines: 1, overflow: TextOverflow.ellipsis, - style: TextStyle(fontWeight: FontWeight.w500, fontStyle: isSubtitleItalic ? FontStyle.italic : null), + style: TextStyle( + fontWeight: FontWeight.w500, + fontStyle: + isSubtitleItalic ? FontStyle.italic : null), ) : null, trailing: isSubjectView @@ -210,8 +213,8 @@ class GradeValueWidget extends StatelessWidget { GradeValue value = this.value; bool isSubjectView = SubjectGradesContainer.of(context) != null; - Color color = - this.color ?? gradeColor(context: context, value: value.value, nocolor: nocolor); + Color color = this.color ?? + gradeColor(context: context, value: value.value, nocolor: nocolor); Widget valueText; final percentage = value.percentage; @@ -283,7 +286,9 @@ class GradeValueWidget extends StatelessWidget { color: color.withOpacity(contrast ? 1.0 : .25), shape: BoxShape.circle, boxShadow: [ - if (shadow) + if (shadow && + Provider.of(context, listen: false) + .shadowEffect) BoxShadow( color: color, blurRadius: 62.0, diff --git a/filcnaplo_mobile_ui/lib/common/panel/panel.dart b/filcnaplo_mobile_ui/lib/common/panel/panel.dart index cc82c53..b2c103d 100755 --- a/filcnaplo_mobile_ui/lib/common/panel/panel.dart +++ b/filcnaplo_mobile_ui/lib/common/panel/panel.dart @@ -1,8 +1,12 @@ +import 'package:filcnaplo/models/settings.dart'; import 'package:filcnaplo/theme/colors/colors.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Panel extends StatelessWidget { - const Panel({Key? key, this.child, this.title, this.padding, this.hasShadow = true}) : super(key: key); + const Panel( + {Key? key, this.child, this.title, this.padding, this.hasShadow = true}) + : super(key: key); final Widget? child; final Widget? title; @@ -25,7 +29,7 @@ class Panel extends StatelessWidget { borderRadius: BorderRadius.circular(16.0), color: Theme.of(context).colorScheme.background, boxShadow: [ - if (hasShadow) + if (hasShadow && Provider.of(context, listen: false).shadowEffect) BoxShadow( offset: const Offset(0, 21), blurRadius: 23.0, @@ -51,7 +55,9 @@ class PanelTitle extends StatelessWidget { return Padding( padding: const EdgeInsets.only(left: 14.0, bottom: 8.0), child: DefaultTextStyle( - style: Theme.of(context).textTheme.titleMedium!.copyWith(fontWeight: FontWeight.w600, color: AppColors.of(context).text.withOpacity(0.65)), + style: Theme.of(context).textTheme.titleMedium!.copyWith( + fontWeight: FontWeight.w600, + color: AppColors.of(context).text.withOpacity(0.65)), child: title, ), ); @@ -69,7 +75,8 @@ class PanelHeader extends StatelessWidget { width: double.infinity, padding: padding, decoration: BoxDecoration( - borderRadius: const BorderRadius.only(topLeft: Radius.circular(16.0), topRight: Radius.circular(16.0)), + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(16.0), topRight: Radius.circular(16.0)), color: Theme.of(context).colorScheme.background, boxShadow: [ BoxShadow( @@ -120,7 +127,9 @@ class PanelFooter extends StatelessWidget { width: double.infinity, padding: padding, decoration: BoxDecoration( - borderRadius: const BorderRadius.only(bottomLeft: Radius.circular(16.0), bottomRight: Radius.circular(16.0)), + borderRadius: const BorderRadius.only( + bottomLeft: Radius.circular(16.0), + bottomRight: Radius.circular(16.0)), color: Theme.of(context).colorScheme.background, boxShadow: [ BoxShadow( diff --git a/filcnaplo_mobile_ui/lib/common/personality_card/empty_card.dart b/filcnaplo_mobile_ui/lib/common/personality_card/empty_card.dart index 9df12a8..fec8b1a 100644 --- a/filcnaplo_mobile_ui/lib/common/personality_card/empty_card.dart +++ b/filcnaplo_mobile_ui/lib/common/personality_card/empty_card.dart @@ -1,5 +1,7 @@ import 'package:dotted_border/dotted_border.dart'; +import 'package:filcnaplo/models/settings.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class EmptyCard extends StatefulWidget { const EmptyCard({ @@ -39,12 +41,14 @@ class _EmptyCardState extends State { color: const Color(0x280008FF), borderRadius: const BorderRadius.all(Radius.circular(5)), boxShadow: [ - BoxShadow( - color: Colors.black.withOpacity(0.08), - offset: const Offset(0, 5), - blurRadius: 20, - spreadRadius: 10, - ), + if (Provider.of(context, listen: false) + .shadowEffect) + BoxShadow( + color: Colors.black.withOpacity(0.08), + offset: const Offset(0, 5), + blurRadius: 20, + spreadRadius: 10, + ), ], ), child: DottedBorder( diff --git a/filcnaplo_mobile_ui/lib/common/widgets/statistics_tile.dart b/filcnaplo_mobile_ui/lib/common/widgets/statistics_tile.dart index 268a254..a5f06f8 100755 --- a/filcnaplo_mobile_ui/lib/common/widgets/statistics_tile.dart +++ b/filcnaplo_mobile_ui/lib/common/widgets/statistics_tile.dart @@ -1,7 +1,9 @@ import 'package:auto_size_text/auto_size_text.dart'; +import 'package:filcnaplo/models/settings.dart'; import 'package:filcnaplo/ui/widgets/grade/grade_tile.dart'; import 'package:flutter/material.dart'; import 'package:i18n_extension/i18n_widget.dart'; +import 'package:provider/provider.dart'; class StatisticsTile extends StatelessWidget { const StatisticsTile({ @@ -31,7 +33,9 @@ class StatisticsTile extends StatelessWidget { } else { valueText = value.toStringAsFixed(0); } - if (I18n.of(context).locale.languageCode != "en") valueText = valueText.replaceAll(".", ","); + if (I18n.of(context).locale.languageCode != "en") { + valueText = valueText.replaceAll(".", ","); + } if (value.isNaN) { valueText = "?"; @@ -44,11 +48,13 @@ class StatisticsTile extends StatelessWidget { borderRadius: BorderRadius.circular(12.0), color: Theme.of(context).colorScheme.background, boxShadow: [ - BoxShadow( - offset: const Offset(0, 21), - blurRadius: 23.0, - color: Theme.of(context).shadowColor, - ) + if (Provider.of(context, listen: false) + .shadowEffect) + BoxShadow( + offset: const Offset(0, 21), + blurRadius: 23.0, + color: Theme.of(context).shadowColor, + ) ], ), constraints: const BoxConstraints( @@ -68,12 +74,18 @@ class StatisticsTile extends StatelessWidget { if (title != null) const SizedBox(height: 4.0), Container( margin: const EdgeInsets.only(top: 4.0), - padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 4.0), + padding: + const EdgeInsets.symmetric(horizontal: 16.0, vertical: 4.0), decoration: BoxDecoration( - color: fill ? (color ?? gradeColor(context: context, value: value)).withOpacity(.2) : null, + color: fill + ? (color ?? gradeColor(context: context, value: value)) + .withOpacity(.2) + : null, border: outline || fill ? Border.all( - color: (color ?? gradeColor(context: context, value: value)).withOpacity(outline ? 1.0 : 0.0), + color: + (color ?? gradeColor(context: context, value: value)) + .withOpacity(outline ? 1.0 : 0.0), width: fill ? 2.0 : 5.0, ) : null, diff --git a/filcnaplo_mobile_ui/lib/pages/home/live_card/live_card_widget.dart b/filcnaplo_mobile_ui/lib/pages/home/live_card/live_card_widget.dart index 658fcaa..2498a22 100755 --- a/filcnaplo_mobile_ui/lib/pages/home/live_card/live_card_widget.dart +++ b/filcnaplo_mobile_ui/lib/pages/home/live_card/live_card_widget.dart @@ -1,7 +1,9 @@ +import 'package:filcnaplo/models/settings.dart'; import 'package:filcnaplo/theme/colors/colors.dart'; import 'package:filcnaplo_mobile_ui/common/progress_bar.dart'; import 'package:flutter/material.dart'; import 'package:flutter_feather_icons/flutter_feather_icons.dart'; +import 'package:provider/provider.dart'; import 'live_card.i18n.dart'; enum ProgressAccuracy { minutes, seconds } @@ -67,11 +69,13 @@ class _LiveCardWidgetState extends State { color: Theme.of(context).colorScheme.background, borderRadius: BorderRadius.circular(16.0), boxShadow: [ - BoxShadow( - offset: const Offset(0, 21), - blurRadius: 23.0, - color: Theme.of(context).shadowColor, - ) + if (Provider.of(context, listen: false) + .shadowEffect) + BoxShadow( + offset: const Offset(0, 21), + blurRadius: 23.0, + color: Theme.of(context).shadowColor, + ) ], ), child: Container( @@ -180,12 +184,12 @@ class _LiveCardWidgetState extends State { WidgetSpan( child: Container( margin: const EdgeInsets - .only( + .only( left: 6.0, bottom: 3.0), padding: const EdgeInsets - .symmetric( + .symmetric( horizontal: 4.0, vertical: 2.0), decoration: