aves/lib/model/settings/enums/viewer_transition.dart
Thibault Deckers b5aaad4df8 refactor
2023-03-28 12:56:39 +02:00

20 lines
877 B
Dart

import 'package:aves/widgets/viewer/controls/controller.dart';
import 'package:aves_model/aves_model.dart';
import 'package:flutter/widgets.dart';
extension ExtraViewerTransition on ViewerTransition {
TransitionBuilder builder(PageController pageController, int index) {
switch (this) {
case ViewerTransition.slide:
return PageTransitionEffects.slide(pageController, index, parallax: false);
case ViewerTransition.parallax:
return PageTransitionEffects.slide(pageController, index, parallax: true);
case ViewerTransition.fade:
return PageTransitionEffects.fade(pageController, index, zoomIn: false);
case ViewerTransition.zoomIn:
return PageTransitionEffects.fade(pageController, index, zoomIn: true);
case ViewerTransition.none:
return PageTransitionEffects.none(pageController, index);
}
}
}