mirror of
https://github.com/Dr-Blank/Vaani.git
synced 2025-12-22 02:49:30 +00:00
36 lines
1 KiB
Dart
36 lines
1 KiB
Dart
|
|
import 'package:flutter/material.dart';
|
||
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||
|
|
import 'package:whispering_pages/features/player/providers/audiobook_player.dart';
|
||
|
|
import 'package:whispering_pages/features/player/view/widgets/speed_selector.dart';
|
||
|
|
|
||
|
|
class PlayerSpeedAdjustButton extends HookConsumerWidget {
|
||
|
|
const PlayerSpeedAdjustButton({
|
||
|
|
super.key,
|
||
|
|
});
|
||
|
|
|
||
|
|
@override
|
||
|
|
Widget build(BuildContext context, WidgetRef ref) {
|
||
|
|
final player = ref.watch(audiobookPlayerProvider);
|
||
|
|
final notifier = ref.watch(audiobookPlayerProvider.notifier);
|
||
|
|
return TextButton(
|
||
|
|
child: Text('${player.speed}x'),
|
||
|
|
onPressed: () {
|
||
|
|
showModalBottomSheet(
|
||
|
|
context: context,
|
||
|
|
barrierLabel: 'Select Speed',
|
||
|
|
constraints: const BoxConstraints(
|
||
|
|
maxHeight: 225,
|
||
|
|
),
|
||
|
|
builder: (context) {
|
||
|
|
return SpeedSelector(
|
||
|
|
onSpeedSelected: (speed) {
|
||
|
|
notifier.setSpeed(speed);
|
||
|
|
},
|
||
|
|
);
|
||
|
|
},
|
||
|
|
);
|
||
|
|
},
|
||
|
|
);
|
||
|
|
}
|
||
|
|
}
|