Create management portal in Flutter #39

This commit is contained in:
Scott E. Graves 2025-03-06 08:53:36 -06:00
parent 02157d21ea
commit c1e5bd6b0b

View File

@ -1,5 +1,4 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:repertory/constants.dart'; import 'package:repertory/constants.dart';
import 'package:repertory/models/mount.dart'; import 'package:repertory/models/mount.dart';
import 'package:repertory/types/mount_config.dart'; import 'package:repertory/types/mount_config.dart';
@ -16,10 +15,9 @@ class AddMountScreen extends StatefulWidget {
class _AddMountScreenState extends State<AddMountScreen> { class _AddMountScreenState extends State<AddMountScreen> {
static const _padding = 15.0; static const _padding = 15.0;
late TextEditingController _mountNameController; final TextEditingController _mountNameController = TextEditingController();
Mount? _mount; Mount? _mount;
String _mountName = "";
String _mountType = ""; String _mountType = "";
bool _showAdvanced = false; bool _showAdvanced = false;
@ -82,20 +80,15 @@ class _AddMountScreenState extends State<AddMountScreen> {
TextField( TextField(
autofocus: true, autofocus: true,
controller: _mountNameController, controller: _mountNameController,
keyboardType: TextInputType.number, keyboardType: TextInputType.text,
onChanged: (value) { onChanged: (_) {
if (_mountName == value) {
return;
}
setState(() { setState(() {
_mountName = value;
_mount = _mount =
(_mountName.isEmpty) (_mountNameController.text.isEmpty)
? null ? null
: Mount( : Mount(
MountConfig( MountConfig(
name: _mountName, name: _mountNameController.text,
type: _mountType, type: _mountType,
), ),
); );
@ -113,12 +106,6 @@ class _AddMountScreenState extends State<AddMountScreen> {
); );
} }
@override
void initState() {
_mountNameController = TextEditingController(text: _mountName);
super.initState();
}
@override @override
void setState(VoidCallback fn) { void setState(VoidCallback fn) {
if (!mounted) { if (!mounted) {