Layout simplifications and tweaks 38/28338/1
authorScott Murray <scott.murray@konsulko.com>
Thu, 29 Dec 2022 06:39:03 +0000 (01:39 -0500)
committerScott Murray <scott.murray@konsulko.com>
Fri, 30 Dec 2022 00:12:23 +0000 (00:12 +0000)
Changes:
- Remove OrientationBuilder usage and landscape widget layout, as
  it complicates further rework due to not being as easily tested,
  and will be an ongoing maintenance hassle until landscape mode is
  actually required.
- Simplify layout by removing the arrows for tire pressure, and
  replacing the heavy Positioned usage with Row/Columns with some
  alignment directives.
- Swap the fuel and speed gauges to have the speed on the left, as
  that matches the typical cluster postion.
- Correct the aspect ratio of hero car image and increase its size
  to better fill available area.
- Tweaked label alignment and positioning on the temperature widgets
  to better make use of the available space.
- Corrected labels to 'km/h' in a couple of places.

Bug-AGL: SPEC-4660

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I45a15e2c4c9aa835745c754952979cda8baa90fa

lib/HomePage.dart
lib/provider.dart
lib/widgets/fuel_and_speed.dart
lib/widgets/weather.dart
pubspec.lock [new file with mode: 0644]
pubspec.yaml

index b6a0349..532a1a1 100644 (file)
@@ -1,21 +1,14 @@
 // SPDX-License-Identifier: Apache-2.0
 import 'package:dashboard_app/Tire_pressure.dart';
-import 'package:dashboard_app/drawArrow.dart';
-import 'package:dashboard_app/provider.dart';
 import 'package:dashboard_app/size.dart';
 import 'package:dashboard_app/widgets/child_lock.dart';
 import 'package:dashboard_app/widgets/fuel_and_speed.dart';
 import 'package:dashboard_app/widgets/weather.dart';
-import 'package:flutter/cupertino.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_riverpod/flutter_riverpod.dart';
-import 'package:latlng/latlng.dart';
-
-
 
 import 'Kuksa-server/vehicle_provider.dart';
 
-
 class HomePage extends ConsumerStatefulWidget {
   const HomePage({Key? key}) : super(key: key);
 
@@ -28,442 +21,150 @@ class _HomePageState extends ConsumerState<HomePage> {
   Widget build(BuildContext context) {
     SizeConfig().init(context);
     final vehicle = ref.watch(vehicleSignalProvider);
-    LatLng pos = LatLng(vehicle.currentLatitude, vehicle.currentLongitude);
-
-    DateTime _now = ref.watch(DateTimeProvider);
-
-
 
     return Scaffold(
         backgroundColor: Colors.black,
-        body: OrientationBuilder(
-          builder: (context, orientation) {
-            if (orientation == Orientation.landscape) {
-              return Stack(
+        body: Stack(
+          children: [
+            Padding(
+              padding: EdgeInsets.fromLTRB(
+                  SizeConfig.safeBlockHorizontal * 3,
+                  SizeConfig.safeBlockVertical * 3,
+                  SizeConfig.safeBlockHorizontal * 3,
+                  SizeConfig.safeBlockVertical),
+              child: Column(
                 children: [
-                  SizedBox(
-                    width: MediaQuery.of(context).size.width,
-                    height: MediaQuery.of(context).size.height,
-                    child: Container(
-                      color: Colors.black,
+                  SizedBox(height: SizeConfig.safeBlockVertical),
+                  Flexible(
+                    flex: 1,
+                    child: Row(
+                      mainAxisAlignment: MainAxisAlignment.end,
+                      crossAxisAlignment: CrossAxisAlignment.end,
+                      children: [],
                     ),
                   ),
-
-
-
-
-                  Positioned(
-                    right: SizeConfig.safeBlockHorizontal * 41,
-                    top: SizeConfig.safeBlockVertical * 58,
-                    child: ChildLockStatus(
-                        isChildLockActiveLeft: vehicle.isChildLockActiveLeft,
-                        isChildLockActiveRight: vehicle.isChildLockActiveRight),
-                  ),
-
-                  Positioned(
-                    top: SizeConfig.safeBlockVertical * 18,
-                    right: SizeConfig.safeBlockHorizontal * 38,
-                    child: Column(
-
+                  SizedBox(height: SizeConfig.safeBlockVertical),
+                  Flexible(
+                    flex: 2,
+                    child: Row(
+                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                      crossAxisAlignment: CrossAxisAlignment.center,
                       children: [
-                        TirePressure(
-                          tname: 'L Front Tire',
-                          tpress: vehicle.frontLeftTP,
-                          mainAxisAlignment: MainAxisAlignment.end,
-                          crossAxisAlignment: CrossAxisAlignment.end,
-                        ),
-                        Container(
-                          height: SizeConfig.safeBlockVertical * 10,
-                          width: SizeConfig.safeBlockHorizontal * 12,
-                          child: CustomPaint(
-                            painter: Arrowpaint2(),
+                        Flexible(
+                          flex: 1,
+                          child: weather(
+                            insideTemperatue: vehicle.insideTemperature,
+                            outsideTempearure: vehicle.outsideTemperature,
                           ),
-                        )
-                      ],
-                    ),
-                  ),
-                  Positioned(
-                    top: SizeConfig.safeBlockVertical * 65,
-                    right: SizeConfig.safeBlockHorizontal * 38,
-                    child: Column(
-
-                      children: [
-                        RotatedBox(
-                          quarterTurns: 2,
-                          child: Container(
-                            height: SizeConfig.safeBlockVertical * 10,
-                            width: SizeConfig.safeBlockHorizontal * 12,
-                            child: CustomPaint(
-                              painter: Arrowpaint(),
-                            ),
-                          ),
-                        ),
-                        TirePressure(
-                          tname: 'L Rear Tire',
-                          tpress: vehicle.rearLeftTP,
-                          crossAxisAlignment: CrossAxisAlignment.end,
-                          mainAxisAlignment: MainAxisAlignment.start,
-                        ),
-                      ],
-                    ),
-                  ),
-                  Positioned(
-                    top: SizeConfig.safeBlockVertical * 18,
-                    right: SizeConfig.safeBlockHorizontal * 7,
-                    child: Column(
-                      children: [
-                        TirePressure(
-                          tname: 'R Front Tire',
-                          tpress: vehicle.frontRightTP,
-                          mainAxisAlignment: MainAxisAlignment.end,
-                          crossAxisAlignment: CrossAxisAlignment.start,
                         ),
-                        Container(
-                          height: SizeConfig.safeBlockVertical * 10,
-                          width: SizeConfig.safeBlockHorizontal * 12,
-                          child: CustomPaint(
-                            painter: Arrowpaint(),
-                          ),
+                        Flexible(
+                          flex: 2,
+                          child: SpeedAndFuel(
+                              fuel: vehicle.fuelLevel, speed: vehicle.speed),
                         ),
                       ],
                     ),
                   ),
-                  Positioned(
-                    top: SizeConfig.safeBlockVertical * 65,
-                    right: SizeConfig.safeBlockHorizontal * 7,
-                    child: Column(
-                      children: [
-                        RotatedBox(
-                          quarterTurns: 2,
-                          child: Container(
-                            height: SizeConfig.safeBlockVertical * 10,
-                            width: SizeConfig.safeBlockHorizontal * 12,
-                            child: CustomPaint(
-                              painter: Arrowpaint2(),
+                  Flexible(
+                    flex: 11,
+                    child: Container(
+                      //color: Colors.red,
+                      child: Row(children: [
+                        Spacer(),
+                        Column(
+                          mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+                          crossAxisAlignment: CrossAxisAlignment.center,
+                          children: [
+                            Container(height: SizeConfig.safeBlockVertical * 6),
+                            TirePressure(
+                              tname: 'Left Front',
+                              tpress: vehicle.frontLeftTP,
+                              mainAxisAlignment: MainAxisAlignment.end,
+                              crossAxisAlignment: CrossAxisAlignment.end,
                             ),
-                          ),
+                            Spacer(),
+                            ChildLockStatus(
+                                isChildLockActiveLeft:
+                                    vehicle.isChildLockActiveLeft,
+                                isChildLockActiveRight:
+                                    vehicle.isChildLockActiveRight),
+                            Spacer(),
+                            TirePressure(
+                              tname: 'Left Rear',
+                              tpress: vehicle.rearLeftTP,
+                              mainAxisAlignment: MainAxisAlignment.start,
+                              crossAxisAlignment: CrossAxisAlignment.end,
+                            ),
+                            Container(
+                                height: SizeConfig.safeBlockVertical * 10),
+                          ],
                         ),
-                        TirePressure(
-                          tname: 'R Rear Tire',
-                          tpress: vehicle.rearRightTP,
-                          mainAxisAlignment: MainAxisAlignment.start,
-                          crossAxisAlignment: CrossAxisAlignment.start,
+                        Image.asset(
+                          'images/car_img.png',
                         ),
-                      ],
-                    ),
-                  ),
-                  Positioned(
-                    top: SizeConfig.safeBlockVertical * 20,
-                    right: SizeConfig.blockSizeHorizontal * 13,
-                    bottom: SizeConfig.blockSizeVertical * 20,
-                    child: SizedBox(
-                      height: SizeConfig.screenHeight * 0.6,
-                      width: SizeConfig.screenWidth * 0.30,
-                      child: AnimatedContainer(
-                        duration: Duration(milliseconds: 10),
-                        child: Image.asset('images/car_img.png'),
-                      ),
-                    ),
-                  ),
-
-                  Positioned(
-                      top: SizeConfig.safeBlockVertical * 7,
-                      left: SizeConfig.safeBlockHorizontal * 2,
-                      bottom: SizeConfig.safeBlockVertical * 4,
-                      child: Container(
-                        width: SizeConfig.screenWidth / 2,
-                        height: SizeConfig.screenHeight * 0.75,
-                        child: Column(
+                        Column(
                           mainAxisAlignment: MainAxisAlignment.spaceEvenly,
-                          crossAxisAlignment: CrossAxisAlignment.start,
+                          crossAxisAlignment: CrossAxisAlignment.center,
                           children: [
-                            Rpm(rpm: vehicle.rpm),
-
-                            Column(
+                            Container(height: SizeConfig.safeBlockVertical * 6),
+                            TirePressure(
+                              tname: 'Right Front',
+                              tpress: vehicle.frontRightTP,
+                              mainAxisAlignment: MainAxisAlignment.end,
                               crossAxisAlignment: CrossAxisAlignment.start,
-                              children: [
-                                Text(
-                                  'Avg. Fuel Consumtion',
-                                  style: SizeConfig.smallnormalfont,
-                                ),
-                                Text(
-                                  vehicle.fuelRate.toString() + ' KM/Litre',
-                                  style: SizeConfig.smallnormalfont,
-                                ),
-                              ],
                             ),
-                            // ignore: prefer_const_constructors
-                            weather(
-                              insideTemperatue: vehicle.insideTemperature,
-                              outsideTempearure: vehicle.outsideTemperature,
+                            Spacer(),
+                            ChildLockStatus(
+                                isChildLockActiveLeft:
+                                    vehicle.isChildLockActiveLeft,
+                                isChildLockActiveRight:
+                                    vehicle.isChildLockActiveRight),
+                            Spacer(),
+                            TirePressure(
+                              tname: 'Right Rear',
+                              tpress: vehicle.rearRightTP,
+                              mainAxisAlignment: MainAxisAlignment.start,
+                              crossAxisAlignment: CrossAxisAlignment.start,
                             ),
-                            SpeedAndFuel(
-                                fuel: vehicle.fuelLevel, speed: vehicle.speed),
+                            Container(
+                                height: SizeConfig.safeBlockVertical * 10),
                           ],
                         ),
-                      ))
-                ],
-              );
-            }
-            //--------------------------Portrait mode ------------------------------------------------
-            else {
-              return Stack(
-                children: [
-                  Positioned(
-                    top: 0,
-                    bottom: 0,
-                    left: 0,
-                    right: 0,
-                    child: Padding(
-                      padding: EdgeInsets.fromLTRB(
-                          SizeConfig.safeBlockHorizontal * 2,
-                          SizeConfig.safeBlockVertical * 2,
-                          SizeConfig.safeBlockHorizontal * 2,
-                          0),
-
-                      child: Column(
-                        children: [
-                          Flexible(flex: 1, child: SizedBox()),
-                          SizedBox(
-                            height: SizeConfig.safeBlockVertical,
-                          ),
-                          Flexible(
-                            flex: 1,
-                            child: Row(
-                              mainAxisAlignment: MainAxisAlignment.end,
-                              crossAxisAlignment: CrossAxisAlignment.end,
-                              children: [
-                              ],
-                            ),
-                          ),
-
-                          SizedBox(
-                            height: SizeConfig.safeBlockVertical,
-                          ),
-                          Flexible(
-                            flex: 2,
-                            child: Row(
-                              mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                              crossAxisAlignment: CrossAxisAlignment.center,
-                              children: [
-                                Flexible(
-                                  flex: 1,
-                                  child: weather(
-                                    insideTemperatue: vehicle.insideTemperature,
-                                    outsideTempearure:
-                                        vehicle.outsideTemperature,
-                                  ),
-                                ),
-                                Flexible(
-                                  flex: 2,
-                                  child: SpeedAndFuel(
-                                      fuel: vehicle.fuelLevel,
-                                      speed: vehicle.speed),
-                                ),
-                              ],
-                            ),
-                          ),
-                          SizedBox(
-                            height: SizeConfig.safeBlockVertical * 6,
-                          ),
-                          Flexible(
-                            flex: 5,
-                            child: Container(
-
-
-                              // color: Colors.red,
-                              height: SizeConfig.screenHeight * 0.6,
-                              width: SizeConfig.screenWidth * 0.53,
-                              child: Stack(
-                                children: [
-                                  Positioned(
-                                    top: 0,
-                                    left: 0,
-                                    child: Column(
-                                      mainAxisAlignment:
-                                          MainAxisAlignment.start,
-                                      crossAxisAlignment:
-                                          CrossAxisAlignment.end,
-                                      children: [
-                                        TirePressure(
-                                          tname: 'L Front Tire',
-                                          tpress: vehicle.frontLeftTP,
-                                          mainAxisAlignment:
-                                              MainAxisAlignment.end,
-                                          crossAxisAlignment:
-                                              CrossAxisAlignment.end,
-                                        ),
-                                        Container(
-                                          height:
-                                              SizeConfig.safeBlockVertical * 6,
-                                          width:
-                                              SizeConfig.safeBlockHorizontal *
-                                                  12,
-                                          child: CustomPaint(
-                                            painter: Arrowpaint2(),
-                                          ),
-                                        ),
-                                      ],
-                                    ),
-                                  ),
-                                  Positioned(
-                                    bottom: 0,
-                                    left: 0,
-                                    child: Column(
-                                      children: [
-                                        ChildLockStatus(
-                                            isChildLockActiveLeft:
-                                                vehicle.isChildLockActiveLeft,
-                                            isChildLockActiveRight:
-                                                vehicle.isChildLockActiveRight),
-                                        RotatedBox(
-                                          quarterTurns: 2,
-                                          child: Container(
-                                            height:
-                                                SizeConfig.safeBlockVertical *
-                                                    6,
-                                            width:
-                                                SizeConfig.safeBlockHorizontal *
-                                                    12,
-                                            child: CustomPaint(
-                                              painter: Arrowpaint(),
-                                            ),
-                                          ),
-                                        ),
-                                        TirePressure(
-                                          tname: 'L Rear Tire',
-                                          tpress: vehicle.rearLeftTP,
-                                          mainAxisAlignment:
-                                              MainAxisAlignment.start,
-                                          crossAxisAlignment:
-                                              CrossAxisAlignment.end,
-                                        ),
-                                      ],
-                                    ),
-                                  ),
-                                  Positioned(
-                                    top: 0,
-                                    bottom: 0,
-                                    left: SizeConfig.safeBlockHorizontal * 12,
-                                    right: SizeConfig.safeBlockHorizontal * 12,
-                                    child: SizedBox(
-
-                                      child: AnimatedContainer(
-                                        duration: Duration(milliseconds: 10),
-                                        child: Image.asset(
-                                          'images/car_img.png',
-                                          fit: BoxFit.fill,
-                                        ),
-                                      ),
-                                    ),
-                                  ),
-                                  Positioned(
-                                    right: 0,
-                                    top: 0,
-                                    child: Column(
-                                      children: [
-                                        TirePressure(
-                                          tname: 'R Front Tire',
-                                          tpress: vehicle.frontRightTP,
-                                          mainAxisAlignment:
-                                              MainAxisAlignment.end,
-                                          crossAxisAlignment:
-                                              CrossAxisAlignment.start,
-                                        ),
-                                        Container(
-                                          height:
-                                              SizeConfig.safeBlockVertical * 6,
-                                          width:
-                                              SizeConfig.safeBlockHorizontal *
-                                                  12,
-                                          child: CustomPaint(
-                                            painter: Arrowpaint(),
-                                          ),
-                                        ),
-                                      ],
-                                    ),
-                                  ),
-                                  Positioned(
-                                    bottom: 0,
-                                    right: 0,
-                                    child: Column(
-                                      children: [
-                                        ChildLockStatus(
-                                            isChildLockActiveLeft:
-                                                vehicle.isChildLockActiveLeft,
-                                            isChildLockActiveRight:
-                                                vehicle.isChildLockActiveRight),
-                                        RotatedBox(
-                                          quarterTurns: 2,
-                                          child: Container(
-                                            height:
-                                                SizeConfig.safeBlockVertical *
-                                                    6,
-                                            width:
-                                                SizeConfig.safeBlockHorizontal *
-                                                    12,
-                                            child: CustomPaint(
-                                              painter: Arrowpaint2(),
-                                            ),
-                                          ),
-                                        ),
-                                        TirePressure(
-                                          tname: 'R Rear Tire',
-                                          tpress: vehicle.rearRightTP,
-                                          mainAxisAlignment:
-                                              MainAxisAlignment.start,
-                                          crossAxisAlignment:
-                                              CrossAxisAlignment.start,
-                                        ),
-                                      ],
-                                    ),
-                                  ),
-                                ],
+                        Spacer(),
+                      ]),
+                    ),
+                  ),
+                  Flexible(
+                    flex: 1,
+                    child: Row(
+                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                      crossAxisAlignment: CrossAxisAlignment.end,
+                      children: [
+                        Flexible(
+                          flex: 1,
+                          child: Column(
+                            mainAxisAlignment: MainAxisAlignment.end,
+                            crossAxisAlignment: CrossAxisAlignment.start,
+                            children: [
+                              Text(
+                                'Fuel Consumption',
+                                style: SizeConfig.smallnormalfont2,
                               ),
-                            ),
-                          ),
-                          SizedBox(
-                            height: SizeConfig.safeBlockVertical,
-                          ),
-                          Flexible(
-                            flex: 1,
-                            child: Row(
-                              mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                              crossAxisAlignment: CrossAxisAlignment.end,
-                              children: [
-                                Flexible(
-                                  flex: 1,
-                                  child: Column(
-                                    mainAxisAlignment: MainAxisAlignment.end,
-                                    crossAxisAlignment:
-                                    CrossAxisAlignment.start,
-                                    children: [
-                                      Text(
-                                        'Avg. Fuel Consumtion',
-                                        style: SizeConfig.smallnormalfont2,
-                                      ),
-                                      Text(
-                                        vehicle.fuelRate.toString() +
-                                            ' KM/Litre',
-                                        style: SizeConfig.smallnormalfont,
-                                      ),
-                                    ],
-                                  ),
-                                ),
-                                Flexible(flex: 1, child: Rpm(rpm: vehicle.rpm)),
-                              ],
-                            ),
+                              Text(
+                                vehicle.fuelRate.toString() + ' km/Litre',
+                                style: SizeConfig.smallnormalfont,
+                              ),
+                            ],
                           ),
-
-                        ],
-                      ),
+                        ),
+                        Flexible(flex: 1, child: Rpm(rpm: vehicle.rpm)),
+                      ],
                     ),
-                  )
+                  ),
                 ],
-              );
-
-            }
-          },
+              ),
+            ),
+          ],
         ));
   }
 }
index 4c9ed0a..463e743 100644 (file)
@@ -5,37 +5,19 @@ import 'dart:math';
 
 import 'package:flutter_riverpod/flutter_riverpod.dart';
 
-final fuelProvider = StateNotifierProvider<fuel,double>((ref) =>
-    fuel(),
+final fuelProvider = StateNotifierProvider<fuel, double>(
+  (ref) => fuel(),
 );
 
-class fuel extends StateNotifier<double>{
+class fuel extends StateNotifier<double> {
   late Timer timer;
-  fuel() : super(0.2){
-
+  fuel() : super(0.2) {
     Timer.periodic(Duration(seconds: 5), (timer) {
       double num = Random().nextInt(100).toDouble();
       update(num);
     });
   }
-  void update(value){
-    state = value;
-  }
-}
-
-final DateTimeProvider = StateNotifierProvider<datetime,DateTime>((ref) =>
-    datetime(),
-);
-
-class datetime extends StateNotifier<DateTime>{
-  datetime() : super(DateTime.now()){
-
-    Timer.periodic(Duration(seconds: 30), (timer) {
-      DateTime _now = DateTime.now();
-      update(_now);
-    });
-  }
-  void update(value){
+  void update(value) {
     state = value;
   }
 }
index 2ee902e..d5dd902 100644 (file)
@@ -6,8 +6,6 @@ import 'package:flutter/material.dart';
 import 'package:percent_indicator/circular_percent_indicator.dart';
 import 'package:percent_indicator/linear_percent_indicator.dart';
 
-
-
 class SpeedAndFuel extends StatelessWidget {
   double fuel;
   double speed;
@@ -24,42 +22,41 @@ class SpeedAndFuel extends StatelessWidget {
         children: [
           CircularPercentIndicator(
             radius: SizeConfig.fontsize * 1.6,
-            percent: fuel / 100,
+            percent: speed / 300,
             lineWidth: SizeConfig.fontsize / 2,
-
-            backgroundColor: Colors.lightBlue.shade100,
-            progressColor: fuel < 25
-                ? Colors.redAccent
-                : fuel < 50
-                    ? Colors.orange
-                    : Colors.green,
+            backgroundColor: Color.fromARGB(255, 176, 213, 195),
+            progressColor: Colors.lightBlueAccent,
             animation: true,
             circularStrokeCap: CircularStrokeCap.round,
             animateFromLastPercent: true,
             center: Text(
-              fuel.toString() + ' %',
+              speed.toInt().toString(),
               style: SizeConfig.smallnormalfont,
             ),
             footer: Text(
-              'fuel',
+              'km/h',
               style: SizeConfig.smallnormalfont2,
             ),
           ),
           CircularPercentIndicator(
             radius: SizeConfig.fontsize * 1.6,
-            percent: speed / 300,
+            percent: fuel / 100,
             lineWidth: SizeConfig.fontsize / 2,
-            backgroundColor: Color.fromARGB(255, 176, 213, 195),
-            progressColor: Colors.lightBlueAccent,
+            backgroundColor: Colors.lightBlue.shade100,
+            progressColor: fuel < 25
+                ? Colors.redAccent
+                : fuel < 50
+                    ? Colors.orange
+                    : Colors.green,
             animation: true,
             circularStrokeCap: CircularStrokeCap.round,
             animateFromLastPercent: true,
             center: Text(
-              speed.toString(),
+              fuel.toInt().toString() + ' %',
               style: SizeConfig.smallnormalfont,
             ),
             footer: Text(
-              'Speed in KM/H',
+              'Fuel',
               style: SizeConfig.smallnormalfont2,
             ),
           ),
@@ -83,7 +80,7 @@ class Rpm extends StatelessWidget {
         crossAxisAlignment: CrossAxisAlignment.end,
         children: [
           Text(
-            "Engine Status",
+            "Engine",
             style: SizeConfig.smallnormalfont2,
           ),
           LinearPercentIndicator(
@@ -93,14 +90,14 @@ class Rpm extends StatelessWidget {
             animateFromLastPercent: true,
             animation: true,
             animationDuration: 500,
-            percent: rpm / 8000,
+            percent: rpm > 9000 ? 9000 : rpm / 9000,
             barRadius: Radius.circular(15),
             leading: Text(
               'RPM',
               style: SizeConfig.smallnormalfont,
             ),
             trailing: Text(
-              rpm.toString(),
+              rpm.toInt().toString(),
               style: SizeConfig.smallnormalfont2,
             ),
           ),
index fe31c72..0a593cc 100644 (file)
@@ -21,55 +21,63 @@ class weather extends StatelessWidget {
         borderRadius: BorderRadius.circular(SizeConfig.safeBlockVertical * 2),
       ),
       height: SizeConfig.safeBlockVertical * 20,
-      width: SizeConfig.blockSizeHorizontal * 20,
+      width: SizeConfig.blockSizeHorizontal * 30,
       child: Column(
         mainAxisAlignment: MainAxisAlignment.end,
         crossAxisAlignment: CrossAxisAlignment.start,
         children: [
           Flexible(
               flex: 1,
-              child: Text(
-                'Weather',
-                style: SizeConfig.smallnormalfont,
-                textAlign: TextAlign.left,
-              )),
+              child: Row(children: [
+                Text(
+                  'Temperature',
+                  style: SizeConfig.smallnormalfont,
+                  textAlign: TextAlign.left,
+                ),
+                SizedBox(
+                  width: SizeConfig.safeBlockHorizontal * 2,
+                ),
+                SizedBox(
+                  height: SizeConfig.safeBlockVertical * 5,
+                  width: SizeConfig.blockSizeHorizontal * 5,
+                  child: Image.asset(
+                    'images/thermostate.png',
+                    color: Colors.orangeAccent,
+                  ),
+                )
+              ])),
           Flexible(
             flex: 3,
             child: Column(
               crossAxisAlignment: CrossAxisAlignment.start,
               children: [
-                SizedBox(
-                    height: SizeConfig.safeBlockVertical * 5,
-                    width: SizeConfig.blockSizeHorizontal * 5,
-                    child: Image.asset(
-                      'images/thermostate.png',
-                      color: Colors.orangeAccent,
-                    )),
                 SizedBox(
                   height: SizeConfig.safeBlockVertical,
                 ),
                 Row(
                   children: [
                     Column(
+                      crossAxisAlignment: CrossAxisAlignment.start,
                       children: [
+                        Text('Inside', style: SizeConfig.smallnormalfont2),
                         Text(insideTemperatue.toString() + ' \u00B0',
                             style: SizeConfig.normalfont),
-                        Text('Inside', style: SizeConfig.smallnormalfont2),
                       ],
                     ),
                     SizedBox(
-                      width: SizeConfig.safeBlockHorizontal,
+                      width: SizeConfig.safeBlockHorizontal * 2,
                     ),
                     Column(
+                      crossAxisAlignment: CrossAxisAlignment.start,
                       children: [
-                        Text(
-                          outsideTempearure.toString() + ' \u00B0',
-                          style: SizeConfig.normalfont,
-                        ),
                         Text(
                           'Outside',
                           style: SizeConfig.smallnormalfont2,
                         ),
+                        Text(
+                          outsideTempearure.toString() + ' \u00B0',
+                          style: SizeConfig.normalfont,
+                        ),
                       ],
                     )
                   ],
diff --git a/pubspec.lock b/pubspec.lock
new file mode 100644 (file)
index 0000000..9832d76
--- /dev/null
@@ -0,0 +1,210 @@
+# Generated by pub
+# See https://dart.dev/tools/pub/glossary#lockfile
+packages:
+  async:
+    dependency: transitive
+    description:
+      name: async
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.9.0"
+  boolean_selector:
+    dependency: transitive
+    description:
+      name: boolean_selector
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.0"
+  characters:
+    dependency: transitive
+    description:
+      name: characters
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.2.1"
+  clock:
+    dependency: transitive
+    description:
+      name: clock
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.1.1"
+  collection:
+    dependency: transitive
+    description:
+      name: collection
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.16.0"
+  fake_async:
+    dependency: transitive
+    description:
+      name: fake_async
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.3.1"
+  flutter:
+    dependency: "direct main"
+    description: flutter
+    source: sdk
+    version: "0.0.0"
+  flutter_lints:
+    dependency: "direct dev"
+    description:
+      name: flutter_lints
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.4"
+  flutter_riverpod:
+    dependency: "direct main"
+    description:
+      name: flutter_riverpod
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.4"
+  flutter_test:
+    dependency: "direct dev"
+    description: flutter
+    source: sdk
+    version: "0.0.0"
+  http:
+    dependency: "direct main"
+    description:
+      name: http
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.13.5"
+  http_parser:
+    dependency: transitive
+    description:
+      name: http_parser
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "4.0.2"
+  lints:
+    dependency: transitive
+    description:
+      name: lints
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.1"
+  matcher:
+    dependency: transitive
+    description:
+      name: matcher
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.12.12"
+  material_color_utilities:
+    dependency: transitive
+    description:
+      name: material_color_utilities
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.1.5"
+  meta:
+    dependency: transitive
+    description:
+      name: meta
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.8.0"
+  path:
+    dependency: transitive
+    description:
+      name: path
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.8.2"
+  percent_indicator:
+    dependency: "direct main"
+    description:
+      name: percent_indicator
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "4.2.2"
+  riverpod:
+    dependency: transitive
+    description:
+      name: riverpod
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.3"
+  sky_engine:
+    dependency: transitive
+    description: flutter
+    source: sdk
+    version: "0.0.99"
+  source_span:
+    dependency: transitive
+    description:
+      name: source_span
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.9.0"
+  stack_trace:
+    dependency: transitive
+    description:
+      name: stack_trace
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.10.0"
+  state_notifier:
+    dependency: transitive
+    description:
+      name: state_notifier
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.7.2+1"
+  stream_channel:
+    dependency: transitive
+    description:
+      name: stream_channel
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.0"
+  string_scanner:
+    dependency: transitive
+    description:
+      name: string_scanner
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.1.1"
+  term_glyph:
+    dependency: transitive
+    description:
+      name: term_glyph
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.2.1"
+  test_api:
+    dependency: transitive
+    description:
+      name: test_api
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.4.12"
+  typed_data:
+    dependency: transitive
+    description:
+      name: typed_data
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.3.1"
+  vector_math:
+    dependency: transitive
+    description:
+      name: vector_math
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.2"
+  yaml:
+    dependency: "direct main"
+    description:
+      name: yaml
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "3.1.1"
+sdks:
+  dart: ">=2.17.0-0 <3.0.0"
+  flutter: ">=3.0.0"
index 0d40344..5945b91 100644 (file)
@@ -30,13 +30,8 @@ dependencies:
   flutter:
     sdk: flutter
 
-
-  # The following adds the Cupertino Icons font to your application.
-  # Use with the CupertinoIcons class for iOS style icons.
-  cupertino_icons: ^1.0.2
   flutter_riverpod: ^1.0.3
   percent_indicator: ^4.2.1
-  latlng: ^0.2.0
   http: ^0.13.4
   yaml: ^3.1.1