Initial commit

This commit is contained in:
Elias Projahn 2019-12-02 21:05:49 +01:00
commit 17f3040645
37 changed files with 1256 additions and 0 deletions

View file

@ -0,0 +1,42 @@
import 'package:flutter/material.dart';
import '../backend.dart';
class PlayPauseButton extends StatefulWidget {
@override
_PlayPauseButtonState createState() => _PlayPauseButtonState();
}
class _PlayPauseButtonState extends State<PlayPauseButton>
with SingleTickerProviderStateMixin {
AnimationController playPauseAnimation;
Backend backend;
@override
void initState() {
super.initState();
playPauseAnimation =
AnimationController(vsync: this, duration: Duration(milliseconds: 300));
}
@override
void didChangeDependencies() {
super.didChangeDependencies();
backend = Backend.of(context);
backend.playing.listen((playing) =>
playing ? playPauseAnimation.forward() : playPauseAnimation.reverse());
}
@override
Widget build(BuildContext context) {
return IconButton(
icon: AnimatedIcon(
icon: AnimatedIcons.play_pause,
progress: playPauseAnimation,
),
onPressed: backend.playPause,
);
}
}