mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
refactor(mobile): maplibre (#6087)
* chore: maplibre gl pubspec * refactor(wip): maplibre for maps * refactor(wip): dual pane + location button * chore: remove flutter_map and deps * refactor(wip): map zoom to location * refactor: location picker * open gallery_viewer on marker tap * remove detectScaleGesture param * test: debounce and throttle * chore: rename get location method * feat(mobile): Adds gps locator to map prompt for easy geolocation (#6282) * Refactored get gps coords * Use var for linter's sake, should handle errors better * Cleanup * Fix linter issues * chore(dep): update maplibre to official lib --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Joshua Herrera <joshua.herrera227@gmail.com>
This commit is contained in:
parent
aa8c54e248
commit
e6c0f0e3aa
64 changed files with 2858 additions and 2171 deletions
|
|
@ -27,7 +27,7 @@ class ImmichAssetGrid extends HookConsumerWidget {
|
|||
final bool canDeselect;
|
||||
final bool? dynamicLayout;
|
||||
final bool showMultiSelectIndicator;
|
||||
final void Function(ItemPosition start, ItemPosition end)?
|
||||
final void Function(Iterable<ItemPosition> itemPositions)?
|
||||
visibleItemsListener;
|
||||
final Widget? topWidget;
|
||||
final bool shrinkWrap;
|
||||
|
|
@ -89,8 +89,10 @@ class ImmichAssetGrid extends HookConsumerWidget {
|
|||
};
|
||||
|
||||
scale.onUpdate = (details) {
|
||||
scaleFactor.value =
|
||||
max(min(5.0, baseScaleFactor.value * details.scale), 1.0);
|
||||
scaleFactor.value = max(
|
||||
min(5.0, baseScaleFactor.value * details.scale),
|
||||
1.0,
|
||||
);
|
||||
if (7 - scaleFactor.value.toInt() != perRow.value) {
|
||||
perRow.value = 7 - scaleFactor.value.toInt();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ class ImmichAssetGridView extends StatefulWidget {
|
|||
final bool canDeselect;
|
||||
final bool dynamicLayout;
|
||||
final bool showMultiSelectIndicator;
|
||||
final void Function(ItemPosition start, ItemPosition end)?
|
||||
final void Function(Iterable<ItemPosition> itemPositions)?
|
||||
visibleItemsListener;
|
||||
final Widget? topWidget;
|
||||
final int heroOffset;
|
||||
|
|
@ -421,15 +421,7 @@ class ImmichAssetGridViewState extends State<ImmichAssetGridView> {
|
|||
|
||||
void _positionListener() {
|
||||
final values = _itemPositionsListener.itemPositions.value;
|
||||
final start = values.firstOrNull;
|
||||
final end = values.lastOrNull;
|
||||
if (start != null && end != null) {
|
||||
if (start.index <= end.index) {
|
||||
widget.visibleItemsListener?.call(start, end);
|
||||
} else {
|
||||
widget.visibleItemsListener?.call(end, start);
|
||||
}
|
||||
}
|
||||
widget.visibleItemsListener?.call(values);
|
||||
}
|
||||
|
||||
void _scrollToTop() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue