From 9938db6af4b83e28acd232ac668202c7ea29221c Mon Sep 17 00:00:00 2001 From: AmanRajSinghMourya Date: Wed, 9 Jul 2025 21:27:44 +0530 Subject: [PATCH 1/4] Fix hero animation --- mobile/apps/photos/lib/ui/collections/flex_grid_view.dart | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mobile/apps/photos/lib/ui/collections/flex_grid_view.dart b/mobile/apps/photos/lib/ui/collections/flex_grid_view.dart index 2267833b1a..aa66ae5d46 100644 --- a/mobile/apps/photos/lib/ui/collections/flex_grid_view.dart +++ b/mobile/apps/photos/lib/ui/collections/flex_grid_view.dart @@ -4,6 +4,7 @@ import 'dart:math'; import 'package:flutter/material.dart'; import "package:flutter/services.dart"; import "package:logging/logging.dart"; +import "package:photos/core/configuration.dart"; import "package:photos/core/event_bus.dart"; import "package:photos/events/clear_album_selections_event.dart"; import "package:photos/generated/l10n.dart"; @@ -98,10 +99,16 @@ class _CollectionsFlexiGridViewWidgetState Future _navigateToCollectionPage(Collection c) async { final thumbnail = await CollectionsService.instance.getCover(c); + final bool isOwner = c.isOwner(Configuration.instance.getUserID()!); + final String tagPrefix = (isOwner ? "collection" : "shared_collection") + + widget.tag + + "_" + + c.id.toString(); // ignore: unawaited_futures routeToPage( context, CollectionPage( + tagPrefix: tagPrefix, CollectionWithThumbnail(c, thumbnail), ), ); From 2595fdebae392c6716225900678be37aede6fb4f Mon Sep 17 00:00:00 2001 From: AmanRajSinghMourya Date: Wed, 9 Jul 2025 21:47:10 +0530 Subject: [PATCH 2/4] Reduce corner smoothing from 1.0 -> 0.6 --- mobile/apps/photos/lib/ui/collections/album/row_item.dart | 2 +- .../photos/lib/ui/collections/device/device_folder_item.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mobile/apps/photos/lib/ui/collections/album/row_item.dart b/mobile/apps/photos/lib/ui/collections/album/row_item.dart index ffaaf04421..48aff48c6a 100644 --- a/mobile/apps/photos/lib/ui/collections/album/row_item.dart +++ b/mobile/apps/photos/lib/ui/collections/album/row_item.dart @@ -27,7 +27,7 @@ class AlbumRowItemWidget extends StatelessWidget { final SelectedAlbums? selectedAlbums; static const _borderWidth = 1.0; static const _cornerRadius = 12.0; - static const _cornerSmoothing = 1.0; + static const _cornerSmoothing = 0.6; const AlbumRowItemWidget( this.c, diff --git a/mobile/apps/photos/lib/ui/collections/device/device_folder_item.dart b/mobile/apps/photos/lib/ui/collections/device/device_folder_item.dart index e7817b169e..cf5809dc71 100644 --- a/mobile/apps/photos/lib/ui/collections/device/device_folder_item.dart +++ b/mobile/apps/photos/lib/ui/collections/device/device_folder_item.dart @@ -13,7 +13,7 @@ class DeviceFolderItem extends StatelessWidget { final double sideOfThumbnail; static const _cornerRadius = 12.0; - static const _cornerSmoothing = 1.0; + static const _cornerSmoothing = 0.6; static const _borderWidth = 1.0; const DeviceFolderItem( From c925ed211700a8c76c0e2af28c5569fbf302f51c Mon Sep 17 00:00:00 2001 From: Prateek Sunal Date: Thu, 10 Jul 2025 18:52:46 +0530 Subject: [PATCH 3/4] fix: issues --- .../machine_learning/face_thumbnail_generator.dart | 3 --- .../apps/photos/lib/ui/collections/album/row_item.dart | 4 ++-- .../photos/lib/ui/home/memories/full_screen_memory.dart | 2 +- .../photos/lib/ui/home/memories/memory_cover_widget.dart | 4 ++-- .../ui/viewer/search/result/people_section_all_page.dart | 9 ++++++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mobile/apps/photos/lib/services/machine_learning/face_thumbnail_generator.dart b/mobile/apps/photos/lib/services/machine_learning/face_thumbnail_generator.dart index 4980f2e904..2d304ce00f 100644 --- a/mobile/apps/photos/lib/services/machine_learning/face_thumbnail_generator.dart +++ b/mobile/apps/photos/lib/services/machine_learning/face_thumbnail_generator.dart @@ -1,15 +1,12 @@ import 'dart:async'; import 'dart:typed_data' show Uint8List; -import "package:computer/computer.dart"; import "package:logging/logging.dart"; import "package:photos/models/ml/face/box.dart"; import "package:photos/services/isolate_functions.dart"; import "package:photos/services/isolate_service.dart"; import "package:photos/utils/image_ml_util.dart"; -final Computer _computer = Computer.shared(); - class FaceThumbnailGenerator extends SuperIsolate { @override Logger get logger => _logger; diff --git a/mobile/apps/photos/lib/ui/collections/album/row_item.dart b/mobile/apps/photos/lib/ui/collections/album/row_item.dart index ffaaf04421..ddc6fb5721 100644 --- a/mobile/apps/photos/lib/ui/collections/album/row_item.dart +++ b/mobile/apps/photos/lib/ui/collections/album/row_item.dart @@ -120,8 +120,8 @@ class AlbumRowItemWidget extends StatelessWidget { child: isSelected ? ColorFiltered( colorFilter: ColorFilter.mode( - Colors.black.withOpacity( - 0.4, + Colors.black.withValues( + alpha: 0.4, ), BlendMode.darken, ), diff --git a/mobile/apps/photos/lib/ui/home/memories/full_screen_memory.dart b/mobile/apps/photos/lib/ui/home/memories/full_screen_memory.dart index 0fa74931a8..4813534190 100644 --- a/mobile/apps/photos/lib/ui/home/memories/full_screen_memory.dart +++ b/mobile/apps/photos/lib/ui/home/memories/full_screen_memory.dart @@ -335,7 +335,7 @@ class _FullScreenMemoryState extends State { currentIndex: value, selectedColor: Colors.white, unselectedColor: - Colors.white.withOpacity(0.4), + Colors.white.withValues(alpha: 0.4), duration: duration, animationController: (controller) { _progressAnimationController = controller; diff --git a/mobile/apps/photos/lib/ui/home/memories/memory_cover_widget.dart b/mobile/apps/photos/lib/ui/home/memories/memory_cover_widget.dart index 16665f6b2d..d4292ffdb4 100644 --- a/mobile/apps/photos/lib/ui/home/memories/memory_cover_widget.dart +++ b/mobile/apps/photos/lib/ui/home/memories/memory_cover_widget.dart @@ -115,7 +115,7 @@ class _MemoryCoverWidgetState extends State { decoration: BoxDecoration( gradient: LinearGradient( colors: [ - Colors.black.withOpacity(0.5), + Colors.black.withValues(alpha: 0.5), Colors.transparent, ], stops: const [0, 1], @@ -171,7 +171,7 @@ class _MemoryCoverWidgetState extends State { decoration: BoxDecoration( gradient: LinearGradient( colors: [ - Colors.black.withOpacity(0.5), + Colors.black.withValues(alpha: 0.5), Colors.transparent, ], stops: const [0, 1], diff --git a/mobile/apps/photos/lib/ui/viewer/search/result/people_section_all_page.dart b/mobile/apps/photos/lib/ui/viewer/search/result/people_section_all_page.dart index d78eb4b9ba..3c6d1c9223 100644 --- a/mobile/apps/photos/lib/ui/viewer/search/result/people_section_all_page.dart +++ b/mobile/apps/photos/lib/ui/viewer/search/result/people_section_all_page.dart @@ -212,8 +212,8 @@ class SelectablePersonSearchExample extends StatelessWidget { ), child: ColorFiltered( colorFilter: ColorFilter.mode( - Colors.black.withOpacity( - isSelected ? 0.4 : 0, + Colors.black.withValues( + alpha: isSelected ? 0.4 : 0, ), BlendMode.darken, ), @@ -568,7 +568,10 @@ class _PeopleSectionAllWidgetState extends State { shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(8), side: BorderSide( - color: Theme.of(context).colorScheme.outline.withOpacity(0.3), + color: Theme.of(context) + .colorScheme + .outline + .withValues(alpha: 0.3), width: 1, ), ), From 85ef085084ce60e0ab457fc9de283de940549452 Mon Sep 17 00:00:00 2001 From: Prateek Sunal Date: Thu, 10 Jul 2025 18:53:23 +0530 Subject: [PATCH 4/4] chore: lint fix --- mobile/apps/photos/lib/services/memories_cache_service.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/mobile/apps/photos/lib/services/memories_cache_service.dart b/mobile/apps/photos/lib/services/memories_cache_service.dart index 51ea8710bb..ac1444fe56 100644 --- a/mobile/apps/photos/lib/services/memories_cache_service.dart +++ b/mobile/apps/photos/lib/services/memories_cache_service.dart @@ -3,7 +3,6 @@ import "dart:io" show File; import "package:flutter/cupertino.dart"; import "package:flutter/foundation.dart" show kDebugMode; -import "package:flutter/material.dart" show BuildContext; import "package:logging/logging.dart"; import "package:path_provider/path_provider.dart"; import "package:photos/core/event_bus.dart";