mirror of
				https://github.com/KevinMidboe/immich.git
				synced 2025-10-29 17:40:28 +00:00 
			
		
		
		
	Show curated asset's location in search page (#55)
* Added Tab Navigation Observer to trigger event handling for tab page navigation * Added query to get access with distinct location * Showed places in search page as a horizontal list * Showed location search result on tapped
This commit is contained in:
		
							
								
								
									
										30
									
								
								mobile/lib/routing/tab_navigation_observer.dart
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								mobile/lib/routing/tab_navigation_observer.dart
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,30 @@
 | 
			
		||||
import 'package:auto_route/auto_route.dart';
 | 
			
		||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
 | 
			
		||||
 | 
			
		||||
import 'package:immich_mobile/modules/search/providers/search_page_state.provider.dart';
 | 
			
		||||
 | 
			
		||||
class TabNavigationObserver extends AutoRouterObserver {
 | 
			
		||||
  /// Riverpod Instance
 | 
			
		||||
  final WidgetRef ref;
 | 
			
		||||
 | 
			
		||||
  TabNavigationObserver({
 | 
			
		||||
    required this.ref,
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  void didInitTabRoute(TabPageRoute route, TabPageRoute? previousRoute) {
 | 
			
		||||
    // Perform tasks on first navigation to SearchRoute
 | 
			
		||||
    if (route.name == 'SearchRoute') {
 | 
			
		||||
      // ref.refresh(getCuratedLocationProvider);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  Future<void> didChangeTabRoute(TabPageRoute route, TabPageRoute previousRoute) async {
 | 
			
		||||
    // Perform tasks on re-visit to SearchRoute
 | 
			
		||||
    if (route.name == 'SearchRoute') {
 | 
			
		||||
      // Refresh Location State
 | 
			
		||||
      ref.refresh(getCuratedLocationProvider);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user