Settings Screen: Remove minor code duplication

This commit is contained in:
Vishesh Handa
2019-02-15 12:28:42 +01:00
parent 4344d4d618
commit 6aedcfce96

View File

@ -34,6 +34,11 @@ class SettingsListState extends State<SettingsList> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
var saveGitAuthor = (String gitAuthor) {
Settings.instance.gitAuthor = gitAuthor;
Settings.instance.save();
};
var gitAuthorForm = Form( var gitAuthorForm = Form(
child: TextFormField( child: TextFormField(
key: gitAuthorKey, key: gitAuthorKey,
@ -50,24 +55,21 @@ class SettingsListState extends State<SettingsList> {
} }
}, },
textInputAction: TextInputAction.done, textInputAction: TextInputAction.done,
onFieldSubmitted: (String gitAuthor) { onFieldSubmitted: saveGitAuthor,
Settings.instance.gitAuthor = gitAuthor; onSaved: saveGitAuthor,
Settings.instance.save();
},
onSaved: (String gitAuthor) {
Settings.instance.gitAuthor = gitAuthor;
Settings.instance.save();
},
initialValue: Settings.instance.gitAuthor, initialValue: Settings.instance.gitAuthor,
), ),
onChanged: () { onChanged: () {
if (!gitAuthorKey.currentState.validate()) return; if (!gitAuthorKey.currentState.validate()) return;
var gitAuthor = gitAuthorKey.currentState.value; var gitAuthor = gitAuthorKey.currentState.value;
Settings.instance.gitAuthor = gitAuthor; saveGitAuthor(gitAuthor);
Settings.instance.save();
}, },
); );
var saveGitAuthorEmail = (String gitAuthorEmail) {
Settings.instance.gitAuthorEmail = gitAuthorEmail;
Settings.instance.save();
};
var gitAuthorEmailForm = Form( var gitAuthorEmailForm = Form(
child: TextFormField( child: TextFormField(
key: gitAuthorEmailKey, key: gitAuthorEmailKey,
@ -90,21 +92,14 @@ class SettingsListState extends State<SettingsList> {
} }
}, },
textInputAction: TextInputAction.done, textInputAction: TextInputAction.done,
onFieldSubmitted: (String gitAuthorEmail) { onFieldSubmitted: saveGitAuthorEmail,
Settings.instance.gitAuthorEmail = gitAuthorEmail; onSaved: saveGitAuthorEmail,
Settings.instance.save();
},
onSaved: (String gitAuthorEmail) {
Settings.instance.gitAuthorEmail = gitAuthorEmail;
Settings.instance.save();
},
initialValue: Settings.instance.gitAuthorEmail, initialValue: Settings.instance.gitAuthorEmail,
), ),
onChanged: () { onChanged: () {
if (!gitAuthorEmailKey.currentState.validate()) return; if (!gitAuthorEmailKey.currentState.validate()) return;
var gitAuthorEmail = gitAuthorEmailKey.currentState.value; var gitAuthorEmail = gitAuthorEmailKey.currentState.value;
Settings.instance.gitAuthorEmail = gitAuthorEmail; saveGitAuthorEmail(gitAuthorEmail);
Settings.instance.save();
}, },
); );