aves/lib/widgets/common/basic/draggable_scrollbar/transition.dart
Thibault Deckers 7797c03170 minor
2023-03-01 18:59:48 +01:00

31 lines
805 B
Dart

import 'package:aves/widgets/common/extensions/build_context.dart';
import 'package:flutter/widgets.dart';
class SlideFadeTransition extends StatelessWidget {
final Animation<double> animation;
final Widget child;
const SlideFadeTransition({
super.key,
required this.animation,
required this.child,
});
@override
Widget build(BuildContext context) {
return AnimatedBuilder(
animation: animation,
builder: (context, child) => animation.value == 0.0 ? Container() : child!,
child: SlideTransition(
position: Tween(
begin: Offset((context.isRtl ? -1 : 1) * .3, 0),
end: Offset.zero,
).animate(animation),
child: FadeTransition(
opacity: animation,
child: child,
),
),
);
}
}