@@ -8,18 +8,13 @@ import 'package:rusty_controller/model/led_effects.dart';
8
8
import 'package:rusty_controller/widgets/effect_settings/common/labeled_slider.dart' ;
9
9
import 'package:rusty_controller/widgets/effect_settings/common/led_color_picker.dart' ;
10
10
11
- class BreathingSettings extends StatefulWidget {
11
+ class BreathingSettings extends StatelessWidget {
12
12
const BreathingSettings ({super .key});
13
13
14
- @override
15
- State <BreathingSettings > createState () => _BreathingSettingsState ();
16
- }
17
-
18
- class _BreathingSettingsState extends State <BreathingSettings > {
19
- final bloc = serviceLocator.get <BreathingBloc >();
20
-
21
14
@override
22
15
Widget build (BuildContext context) {
16
+ final bloc = serviceLocator.get <BreathingBloc >();
17
+
23
18
return BlocBuilder <BreathingBloc , BreathingLedEffect >(
24
19
bloc: bloc,
25
20
builder: (ctx, effect) {
@@ -28,30 +23,22 @@ class _BreathingSettingsState extends State<BreathingSettings> {
28
23
currentColor: effect.color,
29
24
ignoreValue: effect.breatheFromOff,
30
25
onColorPick: (color) {
31
- setState (() {
32
- if (! effect.breatheFromOff && isBrightnessOff (effect, color)) {
33
- Get .closeAllSnackbars ();
34
- Get .rawSnackbar (
35
- message: 'You need to increase the brightness!' ,
36
- );
37
- } else {
38
- bloc.add (BreathingColorEvent (color));
39
-
40
- if (color.value > effect.peak) {
41
- effect.peak = color.value;
42
- }
43
- }
44
- });
26
+ if (! effect.breatheFromOff && isBrightnessOff (effect, color)) {
27
+ Get .closeAllSnackbars ();
28
+ Get .rawSnackbar (
29
+ message: 'You need to increase the brightness!' ,
30
+ );
31
+ } else {
32
+ bloc.add (BreathingEffectEvent (color: color));
33
+ }
45
34
},
46
35
),
47
36
Column (
48
37
children: [
49
38
SwitchListTile .adaptive (
50
39
value: effect.breatheFromOff,
51
40
onChanged: (fromOff) {
52
- setState (() {
53
- bloc.add (BreathingFromOffEvent (fromOff));
54
- });
41
+ bloc.add (BreathingEffectEvent (breatheFromOff: fromOff));
55
42
},
56
43
title: const Text ("Breathe from off" )),
57
44
LabeledLogSlider (
@@ -60,9 +47,7 @@ class _BreathingSettingsState extends State<BreathingSettings> {
60
47
min: minBreathingTime.toDouble (),
61
48
max: maxBreathingTime.toDouble (),
62
49
onChanged: (time) {
63
- setState (() {
64
- bloc.add (BreathingTimeEvent (time.round ()));
65
- });
50
+ bloc.add (BreathingEffectEvent (timeToPeak: time.round ()));
66
51
},
67
52
),
68
53
LabeledSlider (
@@ -73,9 +58,7 @@ class _BreathingSettingsState extends State<BreathingSettings> {
73
58
peak = effect.color.value;
74
59
}
75
60
76
- setState (() {
77
- bloc.add (BreathingPeakEvent (peak));
78
- });
61
+ bloc.add (BreathingEffectEvent (peak: peak));
79
62
},
80
63
),
81
64
],
0 commit comments