From a9f3be680a167161f09430b7498c8dc2cd6c80a7 Mon Sep 17 00:00:00 2001 From: Alex Tran Date: Sat, 12 Feb 2022 12:15:57 -0600 Subject: [PATCH] added placeholder for delete image --- .../lib/modules/home/providers/asset.provider.dart | 11 +++++++++++ .../lib/modules/home/services/asset.service.dart | 4 ++++ mobile/lib/modules/home/ui/delete_diaglog.dart | 14 +++++++++++--- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/mobile/lib/modules/home/providers/asset.provider.dart b/mobile/lib/modules/home/providers/asset.provider.dart index e4f72188f7..2d5d705a37 100644 --- a/mobile/lib/modules/home/providers/asset.provider.dart +++ b/mobile/lib/modules/home/providers/asset.provider.dart @@ -2,11 +2,13 @@ import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/modules/home/models/get_all_asset_respose.model.dart'; import 'package:immich_mobile/modules/home/services/asset.service.dart'; import 'package:immich_mobile/shared/models/immich_asset.model.dart'; +import 'package:immich_mobile/shared/services/device_info.service.dart'; import 'package:intl/intl.dart'; import 'package:collection/collection.dart'; class AssetNotifier extends StateNotifier> { final AssetService _assetService = AssetService(); + final DeviceInfoService _deviceInfoService = DeviceInfoService(); AssetNotifier() : super([]); @@ -90,6 +92,15 @@ class AssetNotifier extends StateNotifier> { clearAllAsset() { state = []; } + + deleteAssets(Set deleteAssets) async { + var deviceInfo = await _deviceInfoService.getDeviceInfo(); + var deviceId = deviceInfo["deviceId"]; + + // Delete asset on server + + // Delete asset from device + } } final currentLocalPageProvider = StateProvider((ref) => 0); diff --git a/mobile/lib/modules/home/services/asset.service.dart b/mobile/lib/modules/home/services/asset.service.dart index 22519d2604..5516c079c6 100644 --- a/mobile/lib/modules/home/services/asset.service.dart +++ b/mobile/lib/modules/home/services/asset.service.dart @@ -75,4 +75,8 @@ class AssetService { return null; } } + + deleteAssets(Set deleteAssets) async { + return null; + } } diff --git a/mobile/lib/modules/home/ui/delete_diaglog.dart b/mobile/lib/modules/home/ui/delete_diaglog.dart index 8613760a22..8b89115481 100644 --- a/mobile/lib/modules/home/ui/delete_diaglog.dart +++ b/mobile/lib/modules/home/ui/delete_diaglog.dart @@ -1,10 +1,15 @@ import 'package:flutter/material.dart'; +import 'package:hooks_riverpod/hooks_riverpod.dart'; +import 'package:immich_mobile/modules/home/providers/asset.provider.dart'; +import 'package:immich_mobile/modules/home/providers/home_page_state.provider.dart'; -class DeleteDialog extends StatelessWidget { +class DeleteDialog extends ConsumerWidget { const DeleteDialog({Key? key}) : super(key: key); @override - Widget build(BuildContext context) { + Widget build(BuildContext context, WidgetRef ref) { + final homePageState = ref.watch(homePageStateProvider); + return AlertDialog( backgroundColor: Colors.grey[200], shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(10)), @@ -21,7 +26,10 @@ class DeleteDialog extends StatelessWidget { ), ), TextButton( - onPressed: () {}, + onPressed: () { + // onConfirmed(); + ref.watch(assetProvider.notifier).deleteAssets(homePageState.selectedItems); + }, child: Text( "Delete", style: TextStyle(color: Colors.red[400]),