@@ -68,25 +68,27 @@ class _BackupOverviewDialogState extends State<BackupOverviewDialog> {
6868 ),
6969 ),
7070 const SizedBox (height: 8 ),
71- RadioGroup <bool >(
72- groupValue: _isMerge,
73- onChanged: (value) {
74- if (value != null ) setState (() => _isMerge = value);
75- },
76- child: Column (
77- children: [
78- _RadioOption <bool >(
79- title: l10n.mergeStrategy,
80- subtitle: l10n.mergeStrategyDesc,
81- value: true ,
82- ),
83- _RadioOption <bool >(
84- title: l10n.overwriteStrategy,
85- subtitle: l10n.overwriteStrategyDesc,
86- value: false ,
87- ),
88- ],
89- ),
71+ Column (
72+ children: [
73+ _RadioOption <bool >(
74+ title: l10n.mergeStrategy,
75+ subtitle: l10n.mergeStrategyDesc,
76+ value: true ,
77+ groupValue: _isMerge,
78+ onChanged: (value) {
79+ if (value != null ) setState (() => _isMerge = value);
80+ },
81+ ),
82+ _RadioOption <bool >(
83+ title: l10n.overwriteStrategy,
84+ subtitle: l10n.overwriteStrategyDesc,
85+ value: false ,
86+ groupValue: _isMerge,
87+ onChanged: (value) {
88+ if (value != null ) setState (() => _isMerge = value);
89+ },
90+ ),
91+ ],
9092 ),
9193 ],
9294 ),
@@ -171,11 +173,15 @@ class _RadioOption<T> extends StatelessWidget {
171173 required this .title,
172174 required this .subtitle,
173175 required this .value,
176+ required this .groupValue,
177+ required this .onChanged,
174178 });
175179
176180 final String title;
177181 final String subtitle;
178182 final T value;
183+ final T groupValue;
184+ final ValueChanged <T ?> onChanged;
179185
180186 @override
181187 Widget build (BuildContext context) {
@@ -184,8 +190,10 @@ class _RadioOption<T> extends StatelessWidget {
184190 subtitle: Text (subtitle),
185191 leading: Radio <T >(
186192 value: value,
193+ groupValue: groupValue,
194+ onChanged: onChanged,
187195 ),
188- onTap: () {} ,
196+ onTap: () => onChanged (value) ,
189197 contentPadding: EdgeInsets .zero,
190198 );
191199 }
0 commit comments