mirror of
https://github.com/immich-app/immich.git
synced 2024-12-17 12:22:31 +02:00
e6c0f0e3aa
* 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>
42 lines
1.1 KiB
Dart
42 lines
1.1 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_hooks/flutter_hooks.dart';
|
|
|
|
/// Creates a [DraggableScrollableController] that will be disposed automatically.
|
|
///
|
|
/// See also:
|
|
/// - [DraggableScrollableController]
|
|
DraggableScrollableController useDraggableScrollController({
|
|
List<Object?>? keys,
|
|
}) {
|
|
return use(
|
|
_DraggableScrollControllerHook(
|
|
keys: keys,
|
|
),
|
|
);
|
|
}
|
|
|
|
class _DraggableScrollControllerHook
|
|
extends Hook<DraggableScrollableController> {
|
|
const _DraggableScrollControllerHook({
|
|
List<Object?>? keys,
|
|
}) : super(keys: keys);
|
|
|
|
@override
|
|
HookState<DraggableScrollableController, Hook<DraggableScrollableController>>
|
|
createState() => _DraggableScrollControllerHookState();
|
|
}
|
|
|
|
class _DraggableScrollControllerHookState extends HookState<
|
|
DraggableScrollableController, _DraggableScrollControllerHook> {
|
|
late final controller = DraggableScrollableController();
|
|
|
|
@override
|
|
DraggableScrollableController build(BuildContext context) => controller;
|
|
|
|
@override
|
|
void dispose() => controller.dispose();
|
|
|
|
@override
|
|
String get debugLabel => 'useDraggableScrollController';
|
|
}
|