fixes for profile buttons
continuous-integration/drone/pr Build is passing Details

This commit is contained in:
Sarah Jamie Lewis 2022-06-09 14:54:48 -07:00
parent be8646e805
commit d1e8f71290
1 changed files with 64 additions and 54 deletions

View File

@ -87,7 +87,7 @@ class _AddEditProfileViewState extends State<AddEditProfileView> {
child: Container( child: Container(
margin: EdgeInsets.all(30), margin: EdgeInsets.all(30),
padding: EdgeInsets.all(20), padding: EdgeInsets.all(20),
child: Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.stretch, children: [ child: Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.center, children: [
Visibility( Visibility(
visible: Provider.of<ProfileInfoState>(context).onion.isNotEmpty, visible: Provider.of<ProfileInfoState>(context).onion.isNotEmpty,
child: Row(mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ child: Row(mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[
@ -127,6 +127,9 @@ class _AddEditProfileViewState extends State<AddEditProfileView> {
badgeEdit: Provider.of<Settings>(context).isExperimentEnabled(ImagePreviewsExperiment)))) badgeEdit: Provider.of<Settings>(context).isExperimentEnabled(ImagePreviewsExperiment))))
])), ])),
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
SizedBox(
height: 20,
),
CwtchLabel(label: AppLocalizations.of(context)!.displayNameLabel), CwtchLabel(label: AppLocalizations.of(context)!.displayNameLabel),
SizedBox( SizedBox(
height: 20, height: 20,
@ -273,64 +276,71 @@ class _AddEditProfileViewState extends State<AddEditProfileView> {
SizedBox( SizedBox(
height: 20, height: 20,
), ),
Row( ElevatedButton(
mainAxisAlignment: MainAxisAlignment.center, onPressed: _createPressed,
children: [ style: ElevatedButton.styleFrom(
Expanded( minimumSize: Size(400, 50),
child: ElevatedButton( maximumSize: Size(800, 50),
onPressed: _createPressed, shape: RoundedRectangleBorder(borderRadius: BorderRadius.horizontal(left: Radius.circular(180), right: Radius.circular(180))),
child: Text( ),
Provider.of<ProfileInfoState>(context).onion.isEmpty ? AppLocalizations.of(context)!.addNewProfileBtn : AppLocalizations.of(context)!.saveProfileBtn, child: Text(
textAlign: TextAlign.center, Provider.of<ProfileInfoState>(context).onion.isEmpty ? AppLocalizations.of(context)!.addNewProfileBtn : AppLocalizations.of(context)!.saveProfileBtn,
), textAlign: TextAlign.center,
), ),
), ),
], SizedBox(
height: 20,
), ),
Visibility( Visibility(
visible: Provider.of<ProfileInfoState>(context, listen: false).onion.isNotEmpty, visible: Provider.of<ProfileInfoState>(context, listen: false).onion.isNotEmpty,
child: Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.end, children: [ child: Tooltip(
SizedBox( message: AppLocalizations.of(context)!.exportProfileTooltip,
height: 20, child: ElevatedButton.icon(
), style: ElevatedButton.styleFrom(
Tooltip( minimumSize: Size(400, 50),
message: AppLocalizations.of(context)!.exportProfileTooltip, maximumSize: Size(800, 50),
child: ElevatedButton.icon( shape: RoundedRectangleBorder(borderRadius: BorderRadius.horizontal(left: Radius.circular(180), right: Radius.circular(180))),
onPressed: () { ),
if (Platform.isAndroid) { onPressed: () {
Provider.of<FlwtchState>(context, listen: false).cwtch.ExportProfile(ctrlrOnion.value.text, ctrlrOnion.value.text + ".tar.gz"); if (Platform.isAndroid) {
final snackBar = SnackBar(content: Text(AppLocalizations.of(context)!.fileSavedTo + " " + ctrlrOnion.value.text + ".tar.gz")); Provider.of<FlwtchState>(context, listen: false).cwtch.ExportProfile(ctrlrOnion.value.text, ctrlrOnion.value.text + ".tar.gz");
ScaffoldMessenger.of(context).showSnackBar(snackBar); final snackBar = SnackBar(content: Text(AppLocalizations.of(context)!.fileSavedTo + " " + ctrlrOnion.value.text + ".tar.gz"));
} else { ScaffoldMessenger.of(context).showSnackBar(snackBar);
showCreateFilePicker(context).then((name) { } else {
if (name != null) { showCreateFilePicker(context).then((name) {
Provider.of<FlwtchState>(context, listen: false).cwtch.ExportProfile(ctrlrOnion.value.text, name); if (name != null) {
final snackBar = SnackBar(content: Text(AppLocalizations.of(context)!.fileSavedTo + " " + name)); Provider.of<FlwtchState>(context, listen: false).cwtch.ExportProfile(ctrlrOnion.value.text, name);
ScaffoldMessenger.of(context).showSnackBar(snackBar); final snackBar = SnackBar(content: Text(AppLocalizations.of(context)!.fileSavedTo + " " + name));
} ScaffoldMessenger.of(context).showSnackBar(snackBar);
}); }
} });
}, }
icon: Icon(Icons.import_export), },
label: Text(AppLocalizations.of(context)!.exportProfile), icon: Icon(Icons.import_export),
)) label: Text(AppLocalizations.of(context)!.exportProfile),
])), ))),
SizedBox(
height: 20,
),
Visibility( Visibility(
visible: Provider.of<ProfileInfoState>(context, listen: false).onion.isNotEmpty, visible: Provider.of<ProfileInfoState>(context, listen: false).onion.isNotEmpty,
child: Column(mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.end, children: [ child: Tooltip(
SizedBox( message: AppLocalizations.of(context)!.enterCurrentPasswordForDelete,
height: 20, child: ElevatedButton.icon(
), style: ElevatedButton.styleFrom(
Tooltip( minimumSize: Size(400, 50),
message: AppLocalizations.of(context)!.enterCurrentPasswordForDelete, maximumSize: Size(800, 50),
child: ElevatedButton.icon( shape: RoundedRectangleBorder(
onPressed: () { side: BorderSide(color: Provider.of<Settings>(context).theme.defaultButtonActiveColor, width: 2.0),
showAlertDialog(context); borderRadius: BorderRadius.horizontal(left: Radius.circular(180), right: Radius.circular(180))),
}, primary: Provider.of<Settings>(context).theme.backgroundMainColor,
icon: Icon(Icons.delete_forever), ),
label: Text(AppLocalizations.of(context)!.deleteBtn), onPressed: () {
)) showAlertDialog(context);
])) },
icon: Icon(Icons.delete_forever),
label: Text(AppLocalizations.of(context)!.deleteBtn),
)))
])))))); ]))))));
}); });
}); });