when focusing spurbedingungen or zurueckgelegte Strecke textfeld, the input value is selected that it is easier to replace value

This commit is contained in:
Nico
2025-05-29 15:33:56 +02:00
parent 2acbf25210
commit 77071b34bf

View File

@@ -25,23 +25,23 @@ class StreckeUSpurbedingungen extends StatefulWidget {
class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> { class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
// vars for percent text fields // vars for percent text fields
String carPercent = "0"; // String carPercent = "0";
String footPercent = "0"; // String footPercent = "0";
String bikePercent = "0"; // String bikePercent = "0";
//
String goodPercent = "0"; // String goodPercent = "0";
String middlePercent = "0"; // String middlePercent = "0";
String badPercent = "0"; // String badPercent = "0";
//
String totalKm = "0"; // String totalKm = "0";
@override @override
void initState() { void initState() {
super.initState(); super.initState();
// Travle Distance // Travle Distance
widget.kmAutoController.addListener(onDistanceTravledUpdated); // widget.kmAutoController.addListener(onDistanceTravledUpdated);
widget.kmFussController.addListener(onDistanceTravledUpdated); // widget.kmFussController.addListener(onDistanceTravledUpdated);
widget.kmRadController.addListener(onDistanceTravledUpdated); // widget.kmRadController.addListener(onDistanceTravledUpdated);
// if one of the values is "" the excursion is edited for the first time. On which value i check here is unnecessarry // if one of the values is "" the excursion is edited for the first time. On which value i check here is unnecessarry
if (widget.kmAutoController.text == "") { if (widget.kmAutoController.text == "") {
@@ -63,28 +63,28 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
} }
} }
void onDistanceTravledUpdated() { // void onDistanceTravledUpdated() {
try { // try {
double kmAuto = double.parse(widget.kmAutoController.text); // double kmAuto = double.parse(widget.kmAutoController.text);
double kmFuss = double.parse(widget.kmFussController.text); // double kmFuss = double.parse(widget.kmFussController.text);
double kmRad = double.parse(widget.kmRadController.text); // double kmRad = double.parse(widget.kmRadController.text);
double gesKm = (kmAuto + kmFuss + kmRad); // double gesKm = (kmAuto + kmFuss + kmRad);
//
if (gesKm == 0) { // if (gesKm == 0) {
carPercent = "0"; // carPercent = "0";
footPercent = "0"; // footPercent = "0";
bikePercent = "0"; // bikePercent = "0";
} else { // } else {
carPercent = (kmAuto / gesKm * 100).round().toString(); // carPercent = (kmAuto / gesKm * 100).round().toString();
footPercent = (kmFuss / gesKm * 100).round().toString(); // footPercent = (kmFuss / gesKm * 100).round().toString();
bikePercent = (kmRad / gesKm * 100).round().toString(); // bikePercent = (kmRad / gesKm * 100).round().toString();
totalKm = gesKm.toString(); // totalKm = gesKm.toString();
} // }
setState(() {}); // setState(() {});
} catch (e) { // } catch (e) {
return; // return;
} // }
} // }
// void onTrackConditionsUpdated() { // void onTrackConditionsUpdated() {
// try { // try {
@@ -135,6 +135,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.kmAutoController, controller: widget.kmAutoController,
onTap: () => widget.kmAutoController.selection = TextSelection(baseOffset: 0, extentOffset: widget.kmAutoController.value.text.length),
), ),
], ],
), ),
@@ -153,6 +154,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.kmFussController, controller: widget.kmFussController,
onTap: () => widget.kmFussController.selection = TextSelection(baseOffset: 0, extentOffset: widget.kmFussController.value.text.length),
), ),
], ],
), ),
@@ -171,6 +173,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.kmRadController, controller: widget.kmRadController,
onTap: () => widget.kmRadController.selection = TextSelection(baseOffset: 0, extentOffset: widget.kmRadController.value.text.length),
), ),
], ],
), ),
@@ -203,6 +206,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.spGutController, controller: widget.spGutController,
onTap: () => widget.spGutController.selection = TextSelection(baseOffset: 0, extentOffset: widget.spGutController.value.text.length),
), ),
], ],
), ),
@@ -217,6 +221,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.spMittelController, controller: widget.spMittelController,
onTap: () => widget.spMittelController.selection = TextSelection(baseOffset: 0, extentOffset: widget.spMittelController.value.text.length),
), ),
], ],
), ),
@@ -231,6 +236,7 @@ class StreckeUSpurbedingungenState extends State<StreckeUSpurbedingungen> {
TextField( TextField(
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
controller: widget.spSchlechtController, controller: widget.spSchlechtController,
onTap: () => widget.spSchlechtController.selection = TextSelection(baseOffset: 0, extentOffset: widget.spSchlechtController.value.text.length),
), ),
], ],
), ),