A framework for building convergent cross-platform Nextcloud clients using Flutter.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

52 lines
1.5 KiB

part of '../neon_files.dart';
class FilesCreateFolderDialog extends StatefulWidget {
const FilesCreateFolderDialog({
super.key,
});
@override
State<FilesCreateFolderDialog> createState() => _FilesCreateFolderDialogState();
}
class _FilesCreateFolderDialogState extends State<FilesCreateFolderDialog> {
final formKey = GlobalKey<FormState>();
final controller = TextEditingController();
void submit() {
if (formKey.currentState!.validate()) {
Navigator.of(context).pop(controller.text.split('/'));
}
}
@override
Widget build(final BuildContext context) => NeonDialog(
title: Text(AppLocalizations.of(context).createFolder),
children: [
Form(
key: formKey,
child: Column(
crossAxisAlignment: CrossAxisAlignment.end,
children: [
TextFormField(
controller: controller,
decoration: InputDecoration(
hintText: AppLocalizations.of(context).folderName,
),
autofocus: true,
validator: (final input) => validateNotEmpty(context, input),
onFieldSubmitted: (final _) {
submit();
},
),
ElevatedButton(
onPressed: submit,
child: Text(AppLocalizations.of(context).createFolder),
),
],
),
),
],
);
}