accessibility: disable viewer parallax when animations are disabled
This commit is contained in:
parent
c63de86c78
commit
051c6f5846
1 changed files with 23 additions and 13 deletions
|
@ -1,4 +1,6 @@
|
||||||
import 'package:aves/model/entry.dart';
|
import 'package:aves/model/entry.dart';
|
||||||
|
import 'package:aves/model/settings/accessibility_animations.dart';
|
||||||
|
import 'package:aves/model/settings/settings.dart';
|
||||||
import 'package:aves/model/source/collection_lens.dart';
|
import 'package:aves/model/source/collection_lens.dart';
|
||||||
import 'package:aves/widgets/common/magnifier/pan/gesture_detector_scope.dart';
|
import 'package:aves/widgets/common/magnifier/pan/gesture_detector_scope.dart';
|
||||||
import 'package:aves/widgets/common/magnifier/pan/scroll_physics.dart';
|
import 'package:aves/widgets/common/magnifier/pan/scroll_physics.dart';
|
||||||
|
@ -54,19 +56,27 @@ class _MultiEntryScrollerState extends State<MultiEntryScroller> with AutomaticK
|
||||||
)
|
)
|
||||||
: _buildViewer(mainEntry);
|
: _buildViewer(mainEntry);
|
||||||
|
|
||||||
child = AnimatedBuilder(
|
child = Selector<Settings, bool>(
|
||||||
animation: pageController,
|
selector: (context, s) => s.accessibilityAnimations.animate,
|
||||||
builder: (context, child) {
|
builder: (context, animate, child) {
|
||||||
// parallax scrolling
|
return animate
|
||||||
double dx = 0;
|
? AnimatedBuilder(
|
||||||
if (pageController.hasClients && pageController.position.haveDimensions) {
|
animation: pageController,
|
||||||
final delta = pageController.page! - index;
|
builder: (context, child) {
|
||||||
dx = delta * pageController.position.viewportDimension / 2;
|
// parallax scrolling
|
||||||
}
|
double dx = 0;
|
||||||
return Transform.translate(
|
if (pageController.hasClients && pageController.position.haveDimensions) {
|
||||||
offset: Offset(dx, 0),
|
final delta = pageController.page! - index;
|
||||||
child: child,
|
dx = delta * pageController.position.viewportDimension / 2;
|
||||||
);
|
}
|
||||||
|
return Transform.translate(
|
||||||
|
offset: Offset(dx, 0),
|
||||||
|
child: child,
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: child,
|
||||||
|
)
|
||||||
|
: child!;
|
||||||
},
|
},
|
||||||
child: child,
|
child: child,
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in a new issue