diff --git a/assets/simulations/BubbleSortDark.png b/assets/simulations/BubbleSortDark.png deleted file mode 100644 index 1c354a9..0000000 Binary files a/assets/simulations/BubbleSortDark.png and /dev/null differ diff --git a/assets/simulations/BubbleSortLight.png b/assets/simulations/BubbleSortLight.png deleted file mode 100644 index 797190c..0000000 Binary files a/assets/simulations/BubbleSortLight.png and /dev/null differ diff --git a/assets/simulations/Epicycloid.png b/assets/simulations/Epicycloid.png deleted file mode 100644 index 46dcec1..0000000 Binary files a/assets/simulations/Epicycloid.png and /dev/null differ diff --git a/assets/simulations/Epicycloid1Dark.png b/assets/simulations/Epicycloid1Dark.png deleted file mode 100644 index ca0a515..0000000 Binary files a/assets/simulations/Epicycloid1Dark.png and /dev/null differ diff --git a/assets/simulations/Epicycloid1Light.png b/assets/simulations/Epicycloid1Light.png deleted file mode 100644 index d542b2d..0000000 Binary files a/assets/simulations/Epicycloid1Light.png and /dev/null differ diff --git a/assets/simulations/EpicycloidDark.png b/assets/simulations/EpicycloidDark.png deleted file mode 100644 index eada572..0000000 Binary files a/assets/simulations/EpicycloidDark.png and /dev/null differ diff --git a/assets/simulations/FourierSeriesDark.png b/assets/simulations/FourierSeriesDark.png deleted file mode 100644 index fe9ca5e..0000000 Binary files a/assets/simulations/FourierSeriesDark.png and /dev/null differ diff --git a/assets/simulations/FourierSeriesLight.png b/assets/simulations/FourierSeriesLight.png deleted file mode 100644 index a566f22..0000000 Binary files a/assets/simulations/FourierSeriesLight.png and /dev/null differ diff --git a/assets/simulations/InsertionSortDark.png b/assets/simulations/InsertionSortDark.png deleted file mode 100644 index f6c45b6..0000000 Binary files a/assets/simulations/InsertionSortDark.png and /dev/null differ diff --git a/assets/simulations/InsertionSortLight.png b/assets/simulations/InsertionSortLight.png deleted file mode 100644 index 920721c..0000000 Binary files a/assets/simulations/InsertionSortLight.png and /dev/null differ diff --git a/assets/simulations/LissajousCurveDark.png b/assets/simulations/LissajousCurveDark.png deleted file mode 100644 index 7867ce8..0000000 Binary files a/assets/simulations/LissajousCurveDark.png and /dev/null differ diff --git a/assets/simulations/LissajousCurveLight.png b/assets/simulations/LissajousCurveLight.png deleted file mode 100644 index 689c917..0000000 Binary files a/assets/simulations/LissajousCurveLight.png and /dev/null differ diff --git a/assets/simulations/MaurerRoseDark.png b/assets/simulations/MaurerRoseDark.png deleted file mode 100644 index fb75afc..0000000 Binary files a/assets/simulations/MaurerRoseDark.png and /dev/null differ diff --git a/assets/simulations/MaurerRoseLight.png b/assets/simulations/MaurerRoseLight.png deleted file mode 100644 index 8d7718c..0000000 Binary files a/assets/simulations/MaurerRoseLight.png and /dev/null differ diff --git a/assets/simulations/RosePatternDark.png b/assets/simulations/RosePatternDark.png deleted file mode 100644 index 34715bf..0000000 Binary files a/assets/simulations/RosePatternDark.png and /dev/null differ diff --git a/assets/simulations/RosePatternLight.png b/assets/simulations/RosePatternLight.png deleted file mode 100644 index 45b74c6..0000000 Binary files a/assets/simulations/RosePatternLight.png and /dev/null differ diff --git a/assets/simulations/ToothpickPatternDark.png b/assets/simulations/ToothpickPatternDark.png deleted file mode 100644 index 1dfddcb..0000000 Binary files a/assets/simulations/ToothpickPatternDark.png and /dev/null differ diff --git a/assets/simulations/ToothpickPatternLight.png b/assets/simulations/ToothpickPatternLight.png deleted file mode 100644 index c7a596f..0000000 Binary files a/assets/simulations/ToothpickPatternLight.png and /dev/null differ diff --git a/lib/src/custom_items/simulation_card.dart b/lib/src/custom_items/simulation_card.dart index 5ca7149..32bc08a 100644 --- a/lib/src/custom_items/simulation_card.dart +++ b/lib/src/custom_items/simulation_card.dart @@ -1,3 +1,4 @@ +import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/material.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -59,9 +60,11 @@ class _SimulationCardState extends State { flex: 10, child: Container( padding: EdgeInsets.fromLTRB(5, 10, 5, 0), - child: Image.asset( - widget.image, - fit: BoxFit.fill, + child:CachedNetworkImage( + imageUrl: widget.image, + progressIndicatorBuilder: (context, url, downloadProgress) => + CircularProgressIndicator(value: downloadProgress.progress), + errorWidget: (context, url, error) => Icon(Icons.error), ), ), ), diff --git a/lib/src/data/simulations.dart b/lib/src/data/simulations.dart index ad14e7d..900015a 100644 --- a/lib/src/data/simulations.dart +++ b/lib/src/data/simulations.dart @@ -12,6 +12,7 @@ import 'package:shared_preferences/shared_preferences.dart'; import 'package:simulate/src/simulations/lissajous_curve.dart'; import 'package:simulate/src/simulations/epicycloid_curve.dart'; import 'package:simulate/src/simulations/maurer_rose.dart'; +import 'package:cached_network_image/cached_network_image.dart'; class Simulations with ChangeNotifier { static var _favorites = [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1]; @@ -57,8 +58,8 @@ class Simulations with ChangeNotifier { id: 0, simulationName: 'Toothpick Pattern', image: theme.darkTheme - ? 'assets/simulations/ToothpickPatternDark.png' - : 'assets/simulations/ToothpickPatternLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/ToothpickPatternDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/ToothpickPatternLight.png', direct: ToothpickPattern(), infoLink: 'https://en.wikipedia.org/wiki/Toothpick_sequence', fav: _favorites[0], @@ -67,8 +68,8 @@ class Simulations with ChangeNotifier { id: 1, simulationName: 'Bubble Sort (Bars)', image: theme.darkTheme - ? 'assets/simulations/BubbleSortDark.png' - : 'assets/simulations/BubbleSortLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/BubbleSortDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/BubbleSortLight.png', direct: BubbleSortBars(), infoLink: 'https://en.wikipedia.org/wiki/Bubble_sort', fav: _favorites[1], @@ -77,8 +78,8 @@ class Simulations with ChangeNotifier { id: 2, simulationName: 'Insertion Sort', image: theme.darkTheme - ? 'assets/simulations/InsertionSortDark.png' - : 'assets/simulations/InsertionSortLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/InsertionSortDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/InsertionSortLight.png', direct: InsertionHome(), infoLink: 'https://en.wikipedia.org/wiki/Insertion_sort', fav: _favorites[2], @@ -87,8 +88,8 @@ class Simulations with ChangeNotifier { id: 3, simulationName: 'Rose Pattern', image: theme.darkTheme - ? 'assets/simulations/RosePatternDark.png' - : 'assets/simulations/RosePatternLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/RosePatternDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/RosePatternLight.png', direct: RosePattern(), infoLink: 'https://en.wikipedia.org/wiki/Rose_(mathematics)', fav: _favorites[3], @@ -97,8 +98,8 @@ class Simulations with ChangeNotifier { id: 4, simulationName: 'Fourier Series', image: theme.darkTheme - ? 'assets/simulations/FourierSeriesDark.png' - : 'assets/simulations/FourierSeriesLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/FourierSeriesDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/FourierSeriesLight.png', direct: FourierSeries(), infoLink: 'https://en.wikipedia.org/wiki/Fourier_series', fav: _favorites[4], @@ -107,8 +108,8 @@ class Simulations with ChangeNotifier { id: 5, simulationName: 'Lissajous Pattern', image: theme.darkTheme - ? 'assets/simulations/LissajousCurveDark.png' - : 'assets/simulations/LissajousCurveLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/LissajousCurveDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/LissajousCurveLight.png', direct: LissajousCurve(), infoLink: 'https://en.wikipedia.org/wiki/Lissajous_curve', fav: _favorites[5], @@ -117,8 +118,8 @@ class Simulations with ChangeNotifier { id: 6, simulationName: 'Epicycloid Pattern (Pencil of Lines)', image: theme.darkTheme - ? 'assets/simulations/Epicycloid1Dark.png' - : 'assets/simulations/Epicycloid1Light.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/Epicycloid1Dark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/Epicycloid1Light.png', direct: EpicycloidCurve(), infoLink: 'https://en.wikipedia.org/wiki/Epicycloid', fav: _favorites[6], @@ -127,8 +128,8 @@ class Simulations with ChangeNotifier { id: 7, simulationName: 'Epicycloid Curve', image: theme.darkTheme - ? 'assets/simulations/EpicycloidDark.png' - : 'assets/simulations/Epicycloid.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/EpicycloidDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/Epicycloid.png', direct: NormalEpicycloidCurve(), infoLink: 'https://en.wikipedia.org/wiki/Epicycloid', fav: _favorites[7], @@ -137,8 +138,8 @@ class Simulations with ChangeNotifier { id: 8, simulationName: 'Maurer Rose Pattern', image: theme.darkTheme - ? 'assets/simulations/MaurerRoseDark.png' - : 'assets/simulations/MaurerRoseLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/MaurerRoseDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/MaurerRoseLight.png', direct: MaurerRoseCurve(), infoLink: 'https://en.wikipedia.org/wiki/Maurer_rose', fav: _favorites[8], @@ -147,8 +148,8 @@ class Simulations with ChangeNotifier { id: 9, simulationName: 'Selection Sort', image: theme.darkTheme - ? 'assets/simulations/InsertionSortDark.png' - : 'assets/simulations/InsertionSortLight.png', + ? 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/InsertionSortDark.png' + : 'https://raw.githubusercontent.com/builtree/assets/simulate/web-assets/InsertionSortLight.png', direct: SelectionSortBars(), infoLink: 'https://en.wikipedia.org/wiki/Selection_sort', fav: _favorites[9], diff --git a/pubspec.yaml b/pubspec.yaml index 90973c1..ef40fe8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -15,6 +15,7 @@ dependencies: provider: ^6.0.2 shared_preferences: ^2.0.12 flutter_screenutil: ^5.1.0 + cached_network_image: ^3.2.0 dev_dependencies: flutter_test: @@ -24,7 +25,6 @@ flutter: uses-material-design: true assets: - - assets/simulations/ - android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png fonts: