Skip to content
Snippets Groups Projects
Commit 6b69b6fe authored by Benoît Harrault's avatar Benoît Harrault
Browse files

Use flutter linter, apply lints, update dependencies

parent c0db5082
No related branches found
No related tags found
1 merge request!19Resolve "Use flutter linter and apply lints"
Pipeline #5083 passed
include: package:flutter_lints/flutter.yaml
......@@ -53,7 +53,7 @@ android {
defaultConfig {
applicationId "org.benoitharrault.memory"
minSdkVersion 16
minSdkVersion flutter.minSdkVersion
targetSdkVersion 30
versionCode appVersionCode.toInteger()
versionName appVersionName
......
org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
app.versionName=1.0.16
app.versionCode=17
app.versionName=1.0.17
app.versionCode=18
Add automatic flutter linter. Apply code lints. Update dependencies.
Ajout d'un correcteur automatique de code. Application des corrections. Mise à jour des dépendances.
import 'package:memory/models/TileModel.dart';
import 'package:memory/models/tile_model.dart';
String selectedTile = "";
int selectedIndex = 0;
......@@ -20,56 +20,56 @@ List<bool> getClicked() {
List<TileModel> getPairs() {
List<TileModel> pairs = [];
TileModel tileModel = new TileModel();
TileModel tileModel = TileModel();
//1
tileModel.setImageAssetPath("assets/fox.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//2
tileModel.setImageAssetPath("assets/hippo.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//3
tileModel.setImageAssetPath("assets/horse.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//4
tileModel.setImageAssetPath("assets/monkey.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//5
tileModel.setImageAssetPath("assets/panda.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//6
tileModel.setImageAssetPath("assets/parrot.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//7
tileModel.setImageAssetPath("assets/rabbit.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//8
tileModel.setImageAssetPath("assets/zoo.png");
......@@ -82,56 +82,56 @@ List<TileModel> getPairs() {
List<TileModel> getQuestionPairs() {
List<TileModel> pairs = [];
TileModel tileModel = new TileModel();
TileModel tileModel = TileModel();
//1
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//2
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//3
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//4
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//5
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//6
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//7
tileModel.setImageAssetPath("assets/question.png");
tileModel.setIsSelected(false);
pairs.add(tileModel);
pairs.add(tileModel);
tileModel = new TileModel();
tileModel = TileModel();
//8
tileModel.setImageAssetPath("assets/question.png");
......
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:memory/data/data.dart';
import 'package:memory/models/TileModel.dart';
import 'package:memory/models/tile_model.dart';
void main() => runApp(MyApp());
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
......@@ -15,17 +18,19 @@ class MyApp extends StatelessWidget {
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: Home(),
home: const Home(),
);
}
}
class Home extends StatefulWidget {
const Home({super.key});
@override
_HomeState createState() => _HomeState();
HomeState createState() => HomeState();
}
class _HomeState extends State<Home> {
class HomeState extends State<Home> {
List<TileModel> gridViewTiles = [];
List<TileModel> questionPairs = [];
......@@ -55,10 +60,10 @@ class _HomeState extends State<Home> {
backgroundColor: Colors.white,
body: SingleChildScrollView(
child: Container(
padding: EdgeInsets.symmetric(horizontal: 20, vertical: 50),
padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 50),
child: Column(
children: <Widget>[
SizedBox(
const SizedBox(
height: 40,
),
points != 800
......@@ -67,12 +72,12 @@ class _HomeState extends State<Home> {
children: <Widget>[
Text(
"$points/800",
style: TextStyle(
style: const TextStyle(
fontSize: 20,
fontWeight: FontWeight.w500,
),
),
Text(
const Text(
"Points",
textAlign: TextAlign.start,
style: TextStyle(
......@@ -83,7 +88,7 @@ class _HomeState extends State<Home> {
],
)
: Container(),
SizedBox(
const SizedBox(
height: 20,
),
points != 800
......@@ -91,7 +96,7 @@ class _HomeState extends State<Home> {
shrinkWrap: true,
//physics: ClampingScrollPhysics(),
scrollDirection: Axis.vertical,
gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent(
gridDelegate: const SliverGridDelegateWithMaxCrossAxisExtent(
mainAxisSpacing: 0.0,
maxCrossAxisExtent: 100.0,
),
......@@ -103,8 +108,7 @@ class _HomeState extends State<Home> {
);
}),
)
: Container(
child: Column(
: Column(
children: <Widget>[
GestureDetector(
onTap: () {
......@@ -121,7 +125,7 @@ class _HomeState extends State<Home> {
color: Colors.blue,
borderRadius: BorderRadius.circular(24),
),
child: Text(
child: const Text(
"Replay",
style: TextStyle(
color: Colors.white,
......@@ -133,7 +137,6 @@ class _HomeState extends State<Home> {
),
],
),
),
],
),
),
......@@ -145,15 +148,15 @@ class _HomeState extends State<Home> {
class Tile extends StatefulWidget {
final String imagePathUrl;
final int tileIndex;
final _HomeState? parent;
final HomeState? parent;
Tile({this.imagePathUrl = '', this.tileIndex = 0, this.parent});
const Tile({super.key, this.imagePathUrl = '', this.tileIndex = 0, this.parent});
@override
_TileState createState() => _TileState();
TileState createState() => TileState();
}
class _TileState extends State<Tile> {
class TileState extends State<Tile> {
@override
Widget build(BuildContext context) {
return GestureDetector(
......@@ -167,9 +170,9 @@ class _TileState extends State<Tile> {
if (selectedTile == myPairs[widget.tileIndex].getImageAssetPath()) {
print("add point");
points = points + 100;
print(selectedTile + " -> " + widget.imagePathUrl);
print("$selectedTile -> ${widget.imagePathUrl}");
TileModel tileModel = new TileModel();
TileModel tileModel = TileModel();
print(widget.tileIndex);
selected = true;
Future.delayed(const Duration(seconds: 2), () {
......@@ -177,20 +180,20 @@ class _TileState extends State<Tile> {
myPairs[widget.tileIndex] = tileModel;
print(selectedIndex);
myPairs[selectedIndex] = tileModel;
this.widget.parent?.setState(() {});
widget.parent?.setState(() {});
setState(() {
selected = false;
});
selectedTile = "";
});
} else {
print(selectedTile + " -> " + myPairs[widget.tileIndex].getImageAssetPath());
print("$selectedTile -> ${myPairs[widget.tileIndex].getImageAssetPath()}");
print("wrong choice");
print(widget.tileIndex);
print(selectedIndex);
selected = true;
Future.delayed(const Duration(seconds: 2), () {
this.widget.parent?.setState(() {
widget.parent?.setState(() {
myPairs[widget.tileIndex].setIsSelected(false);
myPairs[selectedIndex].setIsSelected(false);
});
......@@ -213,7 +216,7 @@ class _TileState extends State<Tile> {
}
},
child: Container(
margin: EdgeInsets.all(5),
margin: const EdgeInsets.all(5),
child: myPairs[widget.tileIndex].getImageAssetPath() != ""
? Image.asset(myPairs[widget.tileIndex].getIsSelected()
? myPairs[widget.tileIndex].getImageAssetPath()
......
......@@ -2,7 +2,10 @@ class TileModel {
String imageAssetPath = "";
bool isSelected = false;
TileModel({this.imageAssetPath = "", this.isSelected = false});
TileModel({
this.imageAssetPath = "",
this.isSelected = false,
});
void setImageAssetPath(String getImageAssetPath) {
imageAssetPath = getImageAssetPath;
......
......@@ -13,10 +13,10 @@ packages:
dependency: transitive
description:
name: collection
sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
url: "https://pub.dev"
source: hosted
version: "1.17.2"
version: "1.18.0"
cupertino_icons:
dependency: "direct main"
description:
......@@ -30,22 +30,38 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7
url: "https://pub.dev"
source: hosted
version: "3.0.1"
lints:
dependency: transitive
description:
name: lints
sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
url: "https://pub.dev"
source: hosted
version: "3.0.0"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
url: "https://pub.dev"
source: hosted
version: "0.5.0"
version: "0.8.0"
meta:
dependency: transitive
description:
name: meta
sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3"
sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
url: "https://pub.dev"
source: hosted
version: "1.9.1"
version: "1.11.0"
sky_engine:
dependency: transitive
description: flutter
......@@ -59,13 +75,5 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.4"
web:
dependency: transitive
description:
name: web
sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10
url: "https://pub.dev"
source: hosted
version: "0.1.4-beta"
sdks:
dart: ">=3.1.0-185.0.dev <4.0.0"
dart: ">=3.2.0-0 <4.0.0"
name: memory
description: A simple and classic memory game.
publish_to: 'none'
version: 1.0.0+1
version: 1.0.17+18
environment:
sdk: '^3.0.0'
......@@ -11,8 +11,10 @@ dependencies:
sdk: flutter
cupertino_icons: ^1.0.6
dev_dependencies:
flutter_lints: ^3.0.1
flutter:
uses-material-design: true
assets:
- assets/
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment