diff --git a/lib/app/helpers/parsing_extension.dart b/lib/app/helpers/parsing_extension.dart index 8d91c8b..4ed8769 100644 --- a/lib/app/helpers/parsing_extension.dart +++ b/lib/app/helpers/parsing_extension.dart @@ -1,5 +1,4 @@ import 'package:intl/intl.dart'; -import 'package:times_up_flutter/common_widgets/show_logger.dart'; extension ParseResult on String { String t() { @@ -111,14 +110,23 @@ double calculatePercentage(Duration duration) { hours: hours, minutes: minutes, ); + var totalDuration = const Duration(days: 1, hours: 2); + + if (parsedDuration.inDays > 60) { + totalDuration = const Duration(days: 340, hours: 2); + } + if (parsedDuration.inDays > 30 && parsedDuration.inDays < 60) { + totalDuration = const Duration(days: 240, hours: 2); + } + + if (parsedDuration.inDays > 7 && parsedDuration.inDays < 30) { + totalDuration = const Duration(days: 30, hours: 2); + } - const totalDuration = Duration(days: 30, hours: 2); final milliseconds = parsedDuration.inMilliseconds; final totalMilliseconds = totalDuration.inMilliseconds; final res = (milliseconds / totalMilliseconds) * 100; - JHLogger.$.w(duration); - JHLogger.$.w(res); return res; } diff --git a/lib/common_widgets/jh_summary_tile.dart b/lib/common_widgets/jh_summary_tile.dart index fe30c50..313a8ab 100644 --- a/lib/common_widgets/jh_summary_tile.dart +++ b/lib/common_widgets/jh_summary_tile.dart @@ -5,9 +5,10 @@ import 'package:times_up_flutter/common_widgets/jh_size_config.dart'; import 'package:times_up_flutter/theme/theme.dart'; class JHSummaryTile extends StatelessWidget { - const JHSummaryTile({Key? key, + const JHSummaryTile({ required this.title, required this.time, + Key? key, this.progressValue = 75, }) : super(key: key); final String title; diff --git a/lib/services/app_usage_local_service.dart b/lib/services/app_usage_local_service.dart index 9314297..fe13972 100644 --- a/lib/services/app_usage_local_service.dart +++ b/lib/services/app_usage_local_service.dart @@ -35,14 +35,16 @@ class AppUsageInfo { factory AppUsageInfo.fromMap(Map data) => AppUsageInfo( data['appName'] as String, data['usage'].toString().p(), - data['startDate'] as DateTime, - data['endDate'] as DateTime, + data['startDate'], + data['endDate'], appIcon: base64Decode(data['appIcon'] as String), ); - late String _packageName, _appName; + late String _packageName; + late String _appName; late Uint8List? _appIcon; late Duration _usage; - DateTime _startDate, _endDate; + dynamic _startDate; + dynamic _endDate; Map toMap() => { 'appName': _appName, @@ -58,9 +60,9 @@ class AppUsageInfo { Duration get usage => _usage; - DateTime get startDate => _startDate; + DateTime get startDate => _startDate as DateTime; - DateTime get endDate => _endDate; + DateTime get endDate => _endDate as DateTime; Uint8List? get appIcon => _appIcon; @@ -118,7 +120,7 @@ class AppUsage { element.usage.inMilliseconds.toDouble(), element.startDate, element.endDate, - appIcon: app.icon!, + appIcon: app.icon, ), ); }