Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • android/org.benoitharrault.puzzlegame
1 result
Show changes
Commits on Source (2)
org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
app.versionName=0.0.3
app.versionCode=3
app.versionName=0.0.4
app.versionCode=4
......@@ -7,6 +7,8 @@ class Data extends ChangeNotifier {
String _image = '';
List _tiles = [];
// application state
bool _shuffling = false;
String get image => _image;
......@@ -29,6 +31,13 @@ class Data extends ChangeNotifier {
notifyListeners();
}
bool get shuffling => _shuffling;
set updateShuffling(bool value) {
_shuffling = value;
notifyListeners();
}
void resetGame() {
_image = '';
notifyListeners();
......
......@@ -36,8 +36,10 @@ class Home extends StatelessWidget {
}
Future<void> selectImage(Data myProvider, String imageCode) async {
myProvider.updateShuffling = true;
myProvider.updateImage = imageCode;
myProvider.updateTiles = await splitImageInTiles(myProvider);
myProvider.updateShuffling = false;
}
Container _buildImageSelectorItem(Data myProvider, String image) {
......@@ -205,10 +207,41 @@ class Home extends StatelessWidget {
);
}
Container _buildShufflingIndicatorWidget() {
return Container(
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'⏳',
style: TextStyle(
fontSize: 60,
fontWeight: FontWeight.w600,
color: Colors.black,
),
),
],
),
);
}
@override
Widget build(BuildContext context) {
Data _myProvider = Provider.of<Data>(context);
var content;
if (_myProvider.shuffling) {
content = _buildShufflingIndicatorWidget();
} else {
if (_myProvider.image == '') {
content = _buildImageSelector(_myProvider);
} else {
content = _buildGameWidget(_myProvider);
}
}
return Scaffold(
appBar: AppBar(
title: Text('Puzzle'),
......@@ -223,9 +256,7 @@ class Home extends StatelessWidget {
),
body: SafeArea(
child: Center(
child: _myProvider.image == ''
? _buildImageSelector(_myProvider)
: _buildGameWidget(_myProvider),
child: content
),
)
);
......