@@ -751,98 +751,118 @@ class _MatchesState extends State<Matches> {
751751 onRefresh: () => widget.onRefresh (),
752752 child: SingleChildScrollView (
753753 controller: widget.scrollController,
754- child: Column (
755- children: widget.matches! .map ((match) {
756- return Padding (
757- key: match.identity.toMediumKey () == widget.nextMatch? .toMediumKey ()
758- ? widget.nextMatchKey
759- : null ,
760- padding: const EdgeInsets .fromLTRB (24 , 20 , 24 , 0 ),
761- child: ClipRRect (
762- borderRadius: const BorderRadius .all (Radius .circular (8 )),
763- child: Container (
764- color: Theme .of (context).colorScheme.surfaceVariant,
765- child: Column (
766- crossAxisAlignment: CrossAxisAlignment .stretch,
767- children: [
768- Row (
754+ child: SafeArea (
755+ left: false ,
756+ right: false ,
757+ top: false ,
758+ child: Padding (
759+ padding: const EdgeInsets .only (bottom: 16 ),
760+ child: Column (
761+ children: widget.matches! .map ((match) {
762+ return Padding (
763+ key: match.identity.toMediumKey () ==
764+ widget.nextMatch? .toMediumKey ()
765+ ? widget.nextMatchKey
766+ : null ,
767+ padding: const EdgeInsets .fromLTRB (24 , 20 , 24 , 0 ),
768+ child: ClipRRect (
769+ borderRadius: const BorderRadius .all (Radius .circular (8 )),
770+ child: Container (
771+ color: Theme .of (context).colorScheme.surfaceVariant,
772+ child: Column (
773+ crossAxisAlignment: CrossAxisAlignment .stretch,
769774 children: [
770- Padding (
771- padding: const EdgeInsets .fromLTRB (10 , 13 , 10 , 13 ),
772- child: Text (
773- match.identity.getLocalizedDescription (
774- includeTournament: false ),
775- style: Theme .of (context).textTheme.labelMedium,
776- ),
777- ),
778- if (match.isScouted) const ScoutedFlag (),
779- const Spacer (),
780- IconButton (
781- onPressed: () {
782- Navigator .of (context).pushNamed (
783- "/match_predictor" ,
784- arguments: {
785- 'red1' : match.red1.teamNumber.toString (),
786- 'red2' : match.red2.teamNumber.toString (),
787- 'red3' : match.red3.teamNumber.toString (),
788- 'blue1' : match.blue1.teamNumber.toString (),
789- 'blue2' : match.blue2.teamNumber.toString (),
790- 'blue3' : match.blue3.teamNumber.toString (),
775+ Row (
776+ children: [
777+ Padding (
778+ padding:
779+ const EdgeInsets .fromLTRB (10 , 13 , 10 , 13 ),
780+ child: Text (
781+ match.identity.getLocalizedDescription (
782+ includeTournament: false ),
783+ style:
784+ Theme .of (context).textTheme.labelMedium,
785+ ),
786+ ),
787+ if (match.isScouted) const ScoutedFlag (),
788+ const Spacer (),
789+ IconButton (
790+ onPressed: () {
791+ Navigator .of (context).pushNamed (
792+ "/match_predictor" ,
793+ arguments: {
794+ 'red1' : match.red1.teamNumber.toString (),
795+ 'red2' : match.red2.teamNumber.toString (),
796+ 'red3' : match.red3.teamNumber.toString (),
797+ 'blue1' :
798+ match.blue1.teamNumber.toString (),
799+ 'blue2' :
800+ match.blue2.teamNumber.toString (),
801+ 'blue3' :
802+ match.blue3.teamNumber.toString (),
803+ },
804+ );
791805 },
792- );
793- },
794- icon: const Icon (Icons .psychology),
795- tooltip: "Match Predictor" ,
796- ),
797- ],
798- ),
799- AllianceRow (
800- alliance: Alliance .red,
801- isScoutingLead: widget.isScoutingLead,
802- items: [
803- AllianceRowItem (
804- matchIdentity: match.identity,
805- longMatchKey: "${match .identity .toMediumKey ()}_0" ,
806- teamInfo: match.red1,
807- ),
808- AllianceRowItem (
809- matchIdentity: match.identity,
810- longMatchKey: "${match .identity .toMediumKey ()}_1" ,
811- teamInfo: match.red2,
812- ),
813- AllianceRowItem (
814- matchIdentity: match.identity,
815- longMatchKey: "${match .identity .toMediumKey ()}_2" ,
816- teamInfo: match.red3,
806+ icon: const Icon (Icons .psychology),
807+ tooltip: "Match Predictor" ,
808+ ),
809+ ],
817810 ),
818- ],
819- ),
820- AllianceRow (
821- alliance: Alliance .blue,
822- isScoutingLead: widget.isScoutingLead,
823- items: [
824- AllianceRowItem (
825- matchIdentity: match.identity,
826- longMatchKey: "${match .identity .toMediumKey ()}_3" ,
827- teamInfo: match.blue1,
828- ),
829- AllianceRowItem (
830- matchIdentity: match.identity,
831- longMatchKey: "${match .identity .toMediumKey ()}_4" ,
832- teamInfo: match.blue2,
811+ AllianceRow (
812+ alliance: Alliance .red,
813+ isScoutingLead: widget.isScoutingLead,
814+ items: [
815+ AllianceRowItem (
816+ matchIdentity: match.identity,
817+ longMatchKey:
818+ "${match .identity .toMediumKey ()}_0" ,
819+ teamInfo: match.red1,
820+ ),
821+ AllianceRowItem (
822+ matchIdentity: match.identity,
823+ longMatchKey:
824+ "${match .identity .toMediumKey ()}_1" ,
825+ teamInfo: match.red2,
826+ ),
827+ AllianceRowItem (
828+ matchIdentity: match.identity,
829+ longMatchKey:
830+ "${match .identity .toMediumKey ()}_2" ,
831+ teamInfo: match.red3,
832+ ),
833+ ],
833834 ),
834- AllianceRowItem (
835- matchIdentity: match.identity,
836- longMatchKey: "${match .identity .toMediumKey ()}_5" ,
837- teamInfo: match.blue3,
835+ AllianceRow (
836+ alliance: Alliance .blue,
837+ isScoutingLead: widget.isScoutingLead,
838+ items: [
839+ AllianceRowItem (
840+ matchIdentity: match.identity,
841+ longMatchKey:
842+ "${match .identity .toMediumKey ()}_3" ,
843+ teamInfo: match.blue1,
844+ ),
845+ AllianceRowItem (
846+ matchIdentity: match.identity,
847+ longMatchKey:
848+ "${match .identity .toMediumKey ()}_4" ,
849+ teamInfo: match.blue2,
850+ ),
851+ AllianceRowItem (
852+ matchIdentity: match.identity,
853+ longMatchKey:
854+ "${match .identity .toMediumKey ()}_5" ,
855+ teamInfo: match.blue3,
856+ ),
857+ ],
838858 ),
839- ],
840- ),
841- ] ),
842- ),
843- ),
844- );
845- }). toList () ),
859+ ]) ,
860+ ),
861+ ),
862+ );
863+ }). toList () ),
864+ ),
865+ ),
846866 ),
847867 );
848868 }
0 commit comments