mirror of
https://github.com/gabehf/Fladder.git
synced 2026-03-13 09:20:31 -07:00
feat: Improve library search screen (#477)
Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
parent
571b682b80
commit
d22d340181
41 changed files with 2881 additions and 2026 deletions
22
lib/util/position_provider.dart
Normal file
22
lib/util/position_provider.dart
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
import 'package:flutter/widgets.dart';
|
||||
|
||||
enum PositionContext { first, middle, last }
|
||||
|
||||
class PositionProvider extends InheritedWidget {
|
||||
final PositionContext position;
|
||||
|
||||
const PositionProvider({
|
||||
required this.position,
|
||||
required super.child,
|
||||
super.key,
|
||||
});
|
||||
|
||||
static PositionContext of(BuildContext context) {
|
||||
final provider = context.dependOnInheritedWidgetOfExactType<PositionProvider>();
|
||||
assert(provider != null, 'No PositionProvider found in context');
|
||||
return provider?.position ?? PositionContext.middle;
|
||||
}
|
||||
|
||||
@override
|
||||
bool updateShouldNotify(PositionProvider oldWidget) => position != oldWidget.position;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue