counter direction issue fix.

merge-requests/78/head
Sikander Saleem 3 years ago
parent 91a0be7974
commit b718f96c3a

@ -1,25 +1,21 @@
import 'dart:async'; import 'dart:async';
import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'dart:ui' as ui;
import 'package:easy_localization/easy_localization.dart'; import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_countdown_timer/flutter_countdown_timer.dart'; import 'package:flutter_countdown_timer/flutter_countdown_timer.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:mohem_flutter_app/api/dashboard_api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart'; import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/colors.dart'; import 'package:mohem_flutter_app/classes/colors.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/classes/utils.dart'; import 'package:mohem_flutter_app/classes/utils.dart';
import 'package:mohem_flutter_app/config/routes.dart'; import 'package:mohem_flutter_app/config/routes.dart';
import 'package:mohem_flutter_app/extensions/int_extensions.dart'; import 'package:mohem_flutter_app/extensions/int_extensions.dart';
import 'package:mohem_flutter_app/extensions/string_extensions.dart'; import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
import 'package:mohem_flutter_app/main.dart';
import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart'; import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart';
import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart'; import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart';
import 'package:mohem_flutter_app/ui/landing/itg/its_add_screen_video_image.dart';
import 'package:mohem_flutter_app/ui/landing/widget/app_drawer.dart'; import 'package:mohem_flutter_app/ui/landing/widget/app_drawer.dart';
import 'package:mohem_flutter_app/ui/landing/widget/menus_widget.dart'; import 'package:mohem_flutter_app/ui/landing/widget/menus_widget.dart';
import 'package:mohem_flutter_app/ui/landing/widget/services_widget.dart'; import 'package:mohem_flutter_app/ui/landing/widget/services_widget.dart';
@ -237,11 +233,14 @@ class _DashboardScreenState extends State<DashboardScreen> {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
9.height, 9.height,
CountdownTimer( Directionality(
endTime: model.endTime, textDirection: ui.TextDirection.ltr,
onEnd: null, child: CountdownTimer(
endWidget: "00:00:00".toText14(color: Colors.white, isBold: true), endTime: model.endTime,
textStyle: const TextStyle(color: Colors.white, fontSize: 14, letterSpacing: -0.48, fontWeight: FontWeight.bold), onEnd: null,
endWidget: "00:00:00".toText14(color: Colors.white, isBold: true),
textStyle: const TextStyle(color: Colors.white, fontSize: 14, letterSpacing: -0.48, fontWeight: FontWeight.bold),
),
), ),
LocaleKeys.timeLeftToday.tr().toText12(color: Colors.white), LocaleKeys.timeLeftToday.tr().toText12(color: Colors.white),
9.height, 9.height,

@ -99,10 +99,13 @@ class _TodayAttendanceScreenState extends State<TodayAttendanceScreen2> {
child: CountdownTimer( child: CountdownTimer(
endTime: model.endTime, endTime: model.endTime,
widgetBuilder: (context, v) { widgetBuilder: (context, v) {
return AutoSizeText( return Directionality(
getValue(v?.hours) + " : " + getValue(v?.min) + " : " + getValue(v?.sec), textDirection: TextDirection.ltr,
maxLines: 1, child: AutoSizeText(
style: const TextStyle(color: Colors.white, fontSize: 42, letterSpacing: -1.92, fontWeight: FontWeight.bold, height: 1), getValue(v?.hours) + " : " + getValue(v?.min) + " : " + getValue(v?.sec),
maxLines: 1,
style: const TextStyle(color: Colors.white, fontSize: 42, letterSpacing: -1.92, fontWeight: FontWeight.bold, height: 1),
),
); );
}, },
onEnd: null, onEnd: null,
@ -116,7 +119,7 @@ class _TodayAttendanceScreenState extends State<TodayAttendanceScreen2> {
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
LocaleKeys.shiftTime.tr().tr().toTextAuto(color: MyColors.greyACColor, fontSize: 18, maxLine: 1).paddingOnly(left: 21,right: 21), LocaleKeys.shiftTime.tr().tr().toTextAuto(color: MyColors.greyACColor, fontSize: 18, maxLine: 1).paddingOnly(left: 21, right: 21),
(model.attendanceTracking!.pShtName ?? "00:00:00").toString().toTextAuto(color: Colors.white, isBold: true, fontSize: 26, maxLine: 1), (model.attendanceTracking!.pShtName ?? "00:00:00").toString().toTextAuto(color: Colors.white, isBold: true, fontSize: 26, maxLine: 1),
], ],
), ),

@ -1,4 +1,5 @@
import 'dart:async'; import 'dart:async';
import 'dart:ui' as ui;
import 'package:auto_size_text/auto_size_text.dart'; import 'package:auto_size_text/auto_size_text.dart';
import 'package:easy_localization/easy_localization.dart'; import 'package:easy_localization/easy_localization.dart';
@ -53,80 +54,83 @@ class BuildCountdownTimer extends StatelessWidget {
); );
Widget buildEmptyWidget() { Widget buildEmptyWidget() {
return Row( return Directionality(
mainAxisSize: MainAxisSize.min, textDirection: ui.TextDirection.ltr,
mainAxisAlignment: MainAxisAlignment.spaceEvenly, child: Row(
crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min,
children: <Widget>[ mainAxisAlignment: MainAxisAlignment.spaceEvenly,
Column( crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
// todo @faiz: Make a separate method and pass string , so we can minimize code replication Column(
AutoSizeText( children: <Widget>[
"00", // todo @faiz: Make a separate method and pass string , so we can minimize code replication
maxFontSize: 24, AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.days.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.days.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
AutoSizeText( Column(
"00", children: <Widget>[
maxFontSize: 24, AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.hours.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.hours.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
AutoSizeText( Column(
"00", children: <Widget>[
maxFontSize: 24, AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.minutes.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.minutes.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
AutoSizeText( Column(
"00", children: <Widget>[
maxFontSize: 24, AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.seconds.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.seconds.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
], ],
),
],
),
); );
} }
@ -149,108 +153,111 @@ class BuildCountdownTimer extends StatelessWidget {
return buildEmptyWidget(); return buildEmptyWidget();
} }
return Row( return Directionality(
mainAxisSize: MainAxisSize.min, textDirection: ui.TextDirection.ltr,
mainAxisAlignment: MainAxisAlignment.spaceEvenly, child: Row(
crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min,
children: <Widget>[ mainAxisAlignment: MainAxisAlignment.spaceEvenly,
Column( crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
// todo @faiz: Make a separate method and pass value and string , so we can minimize code replication Column(
time.days == null children: <Widget>[
? AutoSizeText( // todo @faiz: Make a separate method and pass value and string , so we can minimize code replication
"00", time.days == null
maxFontSize: 24, ? AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
) minFontSize: 20,
: AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
time.days! < 10 ? "0${time.days.toString()}" : time.days.toString(), )
maxFontSize: 24, : AutoSizeText(
minFontSize: 20, time.days! < 10 ? "0${time.days.toString()}" : time.days.toString(),
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.days.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.days.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
time.hours == null Column(
? AutoSizeText( children: <Widget>[
"00", time.hours == null
maxFontSize: 24, ? AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
) minFontSize: 20,
: AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
time.hours! < 10 ? "0${time.hours.toString()}" : time.hours.toString(), )
maxFontSize: 24, : AutoSizeText(
minFontSize: 20, time.hours! < 10 ? "0${time.hours.toString()}" : time.hours.toString(),
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.hours.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.hours.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
time.min == null Column(
? AutoSizeText( children: <Widget>[
"00", time.min == null
maxFontSize: 24, ? AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
) minFontSize: 20,
: AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
time.min! < 10 ? "0${time.min.toString()}" : time.min.toString(), )
maxFontSize: 24, : AutoSizeText(
minFontSize: 20, time.min! < 10 ? "0${time.min.toString()}" : time.min.toString(),
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.minutes.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.minutes.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
buildSeparator(), ],
Column( ),
children: <Widget>[ buildSeparator(),
time.sec == null Column(
? AutoSizeText( children: <Widget>[
"00", time.sec == null
maxFontSize: 24, ? AutoSizeText(
minFontSize: 20, "00",
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
) minFontSize: 20,
: AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
time.sec! < 10 ? "0${time.sec.toString()}" : time.sec.toString(), )
maxFontSize: 24, : AutoSizeText(
minFontSize: 20, time.sec! < 10 ? "0${time.sec.toString()}" : time.sec.toString(),
style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon, maxFontSize: 24,
), minFontSize: 20,
AutoSizeText( style: screenFlag == 0 ? styleDigitHome : styleDigitMarathon,
LocaleKeys.seconds.tr(), ),
minFontSize: 7, AutoSizeText(
maxFontSize: 8, LocaleKeys.seconds.tr(),
style: screenFlag == 0 ? styleTextHome : styleTextMarathon, minFontSize: 7,
), maxFontSize: 8,
], style: screenFlag == 0 ? styleTextHome : styleTextMarathon,
), ),
], ],
),
],
),
); );
} }

Loading…
Cancel
Save