Compare commits

..

8 commits

Author SHA1 Message Date
cb3d688812 Docs 2022-12-27 13:04:45 +01:00
e8b5b72949 refactoring
security update
2022-12-27 13:02:52 +01:00
68d7f70ded Favourites 2022-12-25 21:23:56 +01:00
1a7abb9e4b abdicate object assigning responsibility
The ImagesService itself handles the conversion of Json to the object itself, instead of the ImagesApi
2022-12-25 01:37:22 +01:00
53d13927fd live local search
todos

improve local search
2022-12-25 01:26:26 +01:00
Mehul Ahal
c34d4f23ae live WEB search 2022-12-23 20:21:44 +01:00
Mehul Ahal
730db86b80 fixed connection problem 2022-12-23 11:00:33 +01:00
Mehul Ahal
8064f3f690 added swiping 2022-12-22 20:35:45 +01:00
2 changed files with 8 additions and 23 deletions

View file

@ -46,7 +46,6 @@ class ImageCarouselView extends StatelessWidget {
surfaceTintColor: ConstColours.transparent, surfaceTintColor: ConstColours.transparent,
child: CarouselSlider.builder( child: CarouselSlider.builder(
itemCount: model.numberOfImages, itemCount: model.numberOfImages,
carouselController: model.carouselController,
options: CarouselOptions( options: CarouselOptions(
enlargeFactor: 1, enlargeFactor: 1,
enlargeCenterPage: true, enlargeCenterPage: true,
@ -80,26 +79,19 @@ class ImageCarouselView extends StatelessWidget {
builder: (context, _, __) => Row( builder: (context, _, __) => Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
IconButton( Icon(
icon: Icon(
Icons.chevron_left, Icons.chevron_left,
color: model.hasPreviousImage color: model.hasPreviousImage
? ConstColours.white ? ConstColours.white
: ConstColours.black, : ConstColours.black,
), ),
onPressed: model.onPreviousPressed,
),
AutoSizeText( AutoSizeText(
model.currentImageName, model.currentImageName,
style: ConstText.imageOverlayTextStyle(context), style: ConstText.imageOverlayTextStyle(context),
), ),
IconButton( Icon(
icon: Icon(
Icons.chevron_right, Icons.chevron_right,
color: color: model.hasNextImage ? ConstColours.white : ConstColours.black,
model.hasNextImage ? ConstColours.white : ConstColours.black,
),
onPressed: model.onNextPressed,
), ),
], ],
), ),

View file

@ -1,4 +1,3 @@
import 'package:carousel_slider/carousel_controller.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter_cache_manager/flutter_cache_manager.dart'; import 'package:flutter_cache_manager/flutter_cache_manager.dart';
import 'package:mc_gallery/features/home/views/image_carousel/image_carousel_view.dart'; import 'package:mc_gallery/features/home/views/image_carousel/image_carousel_view.dart';
@ -18,8 +17,6 @@ class ImageCarouselViewModel extends BaseViewModel {
late final ValueNotifier<ImageModel> _currentImageModelNotifier; late final ValueNotifier<ImageModel> _currentImageModelNotifier;
ValueListenable<ImageModel> get currentImageModelListenable => _currentImageModelNotifier; ValueListenable<ImageModel> get currentImageModelListenable => _currentImageModelNotifier;
final CarouselController carouselController = CarouselController();
@override @override
Future<void> initialise(bool Function() mounted, [arguments]) async { Future<void> initialise(bool Function() mounted, [arguments]) async {
_currentImageModelNotifier = ValueNotifier(_imagesService.imageModels _currentImageModelNotifier = ValueNotifier(_imagesService.imageModels
@ -39,10 +36,6 @@ class ImageCarouselViewModel extends BaseViewModel {
log.info('Swiped to image: ${_currentImageModelNotifier.value.imageIndex}'); log.info('Swiped to image: ${_currentImageModelNotifier.value.imageIndex}');
} }
void onPreviousPressed() => carouselController.previousPage();
void onNextPressed() => carouselController.nextPage();
String get currentImageUrl => currentImageModelListenable.value.uri.toString(); String get currentImageUrl => currentImageModelListenable.value.uri.toString();
String get currentImageKey => currentImageModelListenable.value.imageIndex.toString(); String get currentImageKey => currentImageModelListenable.value.imageIndex.toString();
String get currentImageName => currentImageModelListenable.value.imageName; String get currentImageName => currentImageModelListenable.value.imageName;