add dispose to files to remove controllers when not used

This commit is contained in:
2024-08-23 11:14:53 +02:00
parent fdc7e1dda3
commit 2ef8eb2b3c
45 changed files with 374 additions and 53 deletions

View File

@@ -44,6 +44,12 @@ class _AddOrViewPatientState extends State<AddOrViewPatient> {
return null;
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return FutureBuilder(

View File

@@ -32,6 +32,12 @@ class _BuildFileViewState extends State<BuildFileView> {
return path.split("/").last;
}
@override
void dispose() {
pdfViewerController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
// double width = MediaQuery.sizeOf(context).width;

View File

@@ -253,6 +253,12 @@ class _BuildPatientsListState extends State<BuildAccessRequestList> {
);
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return ListView.separated(

View File

@@ -294,6 +294,12 @@ class _BuildFilesListState extends State<BuildFilesList> {
);
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
if (widget.files.isNotEmpty) {

View File

@@ -21,6 +21,12 @@ class BuildMedicinesList extends StatefulWidget {
class _BuildMedicinesListState extends State<BuildMedicinesList> {
int indexOn = 0;
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return ListView.separated(

View File

@@ -252,6 +252,15 @@ class _BuildNotesListState extends State<BuildNotesList> {
);
}
@override
void dispose() {
noteTextController.dispose();
businessNameController.dispose();
userNameController.dispose();
dateController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
if (widget.notes.isNotEmpty) {

View File

@@ -337,6 +337,16 @@ class _BuildPatientsListState extends State<BuildPatientsList> {
}
}
@override
void dispose() {
dateController.dispose();
timeController.dispose();
idController.dispose();
fnameController.dispose();
lnameController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return ListView.separated(

View File

@@ -147,6 +147,12 @@ class _BuildPatientsListState extends State<BuildPatientQueueList> {
);
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return ListView.separated(

View File

@@ -28,6 +28,12 @@ class _HomeTileState extends State<HomeTile> {
late Color mainC;
late Color secondC;
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
mainC = widget.p;

View File

@@ -37,36 +37,6 @@ class _HomeTileGridState extends State<HomeTileGrid> {
late Future<List<List<List<dynamic>>>> pbswitch;
int _selectedIndex = 0;
final baseAPI = AppEnviroment.baseApiUrl;
// late Future<BusinessUser?> futureBusinessUser;
// late Future<Business?> futureBusiness;
// late BusinessUser? businessUser;
// late Business? business;
// Future<BusinessUser?> getBusinessUserDetails() async {
// var response = await http
// .get(Uri.parse("$baseAPI/business-user/${widget.signedInUser.app_id}"));
// if (response.statusCode == 200) {
// String body = response.body;
// var decodedData = jsonDecode(body);
// BusinessUser business_User = BusinessUser.fromJson(decodedData);
// return business_User;
// } else {
// return null;
// }
// }
// Future<Business?> getBusinessDetails() async {
// var response = await http.get(
// Uri.parse("$baseAPI/business/app_id/${widget.signedInUser.app_id}"));
// if (response.statusCode == 200) {
// String body = response.body;
// var decodedData = jsonDecode(body);
// Business business = Business.fromJson(decodedData);
// return business;
// } else {
// return null;
// }
// }
void setAppsNewPersonal(List<List<dynamic>> tileList) {
if (widget.signedInUser.fname == "") {
@@ -336,6 +306,12 @@ class _HomeTileGridState extends State<HomeTileGrid> {
}
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
pbswitch = setApps(personalTileList, businessTileList);

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
class MIHButton extends StatelessWidget {
class MIHButton extends StatefulWidget {
final void Function() onTap;
final String buttonText;
final Color buttonColor;
@@ -14,22 +14,33 @@ class MIHButton extends StatelessWidget {
required this.textColor,
});
@override
State<MIHButton> createState() => _MIHButtonState();
}
class _MIHButtonState extends State<MIHButton> {
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return ElevatedButton(
onPressed: onTap,
onPressed: widget.onTap,
style: ElevatedButton.styleFrom(
backgroundColor: buttonColor,
backgroundColor: widget.buttonColor,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12.0),
),
),
child: Text(
buttonText,
widget.buttonText,
style: TextStyle(
//fontWeight: FontWeight.bold,
fontSize: 20,
color: textColor,
color: widget.textColor,
fontWeight: FontWeight.bold,
),
),

View File

@@ -81,6 +81,12 @@ class _MIHDateFieldState extends State<MIHDateField> {
return null;
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -88,6 +88,12 @@ class _MIHDropdownFieldState extends State<MIHDropdownField> {
return menueList;
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
menu = buidMenueOptions(widget.dropdownOptions);

View File

@@ -102,6 +102,12 @@ class _MIHFileFieldState extends State<MIHFileField> {
}
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -77,6 +77,12 @@ class _MIHMLTextFieldState extends State<MIHMLTextField> {
}
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -113,6 +113,12 @@ class _MIHPassFieldState extends State<MIHPassField> {
});
}
@override
void dispose() {
textFieldFocusNode.dispose();
super.dispose();
}
@override
void initState() {
textFieldFocusNode.addListener(_onFocusChange);

View File

@@ -81,6 +81,12 @@ class _MIHSearchFieldState extends State<MIHSearchField> {
}
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -101,6 +101,12 @@ class _MIHTextFieldState extends State<MIHTextField> {
}
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -99,6 +99,12 @@ class _MIHDateFieldState extends State<MIHTimeField> {
return null;
}
@override
void dispose() {
_focus.dispose();
super.dispose();
}
@override
void initState() {
_focus.addListener(_onFocusChange);

View File

@@ -17,6 +17,12 @@ class Medcertinput extends StatefulWidget {
}
class _MedcertinputState extends State<Medcertinput> {
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return SizedBox(

View File

@@ -52,6 +52,12 @@ class _MedicineSearchState extends State<MedicineSearch> {
);
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
futueMeds = getMedList(endpointMeds + widget.searchVlaue.text);

View File

@@ -1,21 +1,33 @@
import 'package:flutter/material.dart';
import 'package:patient_manager/main.dart';
class MIHAppBar extends StatelessWidget implements PreferredSizeWidget {
@override
Size get preferredSize => const Size.fromHeight(60);
class MIHAppBar extends StatefulWidget implements PreferredSizeWidget {
final String barTitle;
const MIHAppBar({super.key, required this.barTitle});
@override
State<MIHAppBar> createState() => _MIHAppBarState();
@override
// TODO: implement preferredSize
Size get preferredSize => const Size.fromHeight(60);
}
class _MIHAppBarState extends State<MIHAppBar> {
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return AppBar(
elevation: 8,
shadowColor: MzanziInnovationHub.of(context)!.theme.secondaryColor(),
title: Text(
barTitle,
widget.barTitle,
),
centerTitle: true,
);

View File

@@ -46,6 +46,12 @@ class _MIHAppDrawerState extends State<MIHAppDrawer> {
return true;
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
//signedInUser = getUserDetails();

View File

@@ -214,6 +214,23 @@ class _PatientDetailsState extends State<PatientDetails> {
}
}
@override
void dispose() {
idController.dispose();
fnameController.dispose();
lnameController.dispose();
cellController.dispose();
emailController.dispose();
medNameController.dispose();
medNoController.dispose();
medSchemeController.dispose();
addressController.dispose();
medAidController.dispose();
medMainMemController.dispose();
medAidCodeController.dispose();
super.dispose();
}
@override
void initState() {
setState(() {

View File

@@ -617,6 +617,22 @@ class _PatientFilesState extends State<PatientFiles> {
}
}
@override
void dispose() {
startDateController.dispose();
endDateTextController.dispose();
retDateTextController.dispose();
selectedFileController.dispose();
medicineController.dispose();
quantityController.dispose();
dosageController.dispose();
timesDailyController.dispose();
noDaysController.dispose();
noRepeatsController.dispose();
outputController.dispose();
super.dispose();
}
@override
void initState() {
futueFiles = fetchFiles();

View File

@@ -272,6 +272,13 @@ class _PatientNotesState extends State<PatientNotes> {
}
}
@override
void dispose() {
titleController.dispose();
noteTextController.dispose();
super.dispose();
}
@override
void initState() {
futueNotes = fetchNotes(endpoint + widget.patientAppId);

View File

@@ -196,6 +196,12 @@ class _MIHDeleteMessageState extends State<MIHDeleteMessage> {
return messageTypes[type];
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
var size = MediaQuery.of(context).size;

View File

@@ -782,19 +782,11 @@ class _MIHErrorMessageState extends State<MIHErrorMessage> {
return messageTypes[type];
}
// void initialiseSizes() {
// }
// @override
// void initState() {
// size = MediaQuery.of(context).size;
// setInputError();
// setinvalidCredError();
// setInternetError();
// //initialiseSizes();
// super.initState();
// }
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {

View File

@@ -93,6 +93,12 @@ class _MIHSuccessMessageState extends State<MIHSuccessMessage> {
return messageTypes[type];
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
message = widget.successMessage;

View File

@@ -167,6 +167,12 @@ class _MIHDeleteMessageState extends State<MIHWarningMessage> {
return messageTypes[type];
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
var size = MediaQuery.of(context).size;

View File

@@ -546,6 +546,12 @@ class _PrescripInputState extends State<PrescripInput> {
);
}
@override
void dispose() {
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
//futueMeds = getMedList(endpointMeds);

View File

@@ -18,6 +18,12 @@ class _SignInOrRegisterState extends State<SignInOrRegister> {
});
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
if (showSignInPage) {

View File

@@ -38,6 +38,12 @@ class _FullScreenFileViewerState extends State<FullScreenFileViewer> {
});
}
@override
void dispose() {
pdfViewerController.dispose();
super.dispose();
}
@override
void initState() {
pdfViewerController.addListener(onPageSelect);

View File

@@ -71,6 +71,12 @@ class _HomeState extends State<Home> {
}
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
void initState() {
super.initState();

View File

@@ -244,6 +244,12 @@ class _PatientAccessRequestState extends State<PatientAccessRequest> {
// });
}
@override
void dispose() {
filterController.dispose();
super.dispose();
}
@override
void initState() {
selectedDropdown = "All";

View File

@@ -309,6 +309,24 @@ class _AddPatientState extends State<AddPatient> {
}
}
@override
void dispose() {
idController.dispose();
fnameController.dispose();
lnameController.dispose();
cellController.dispose();
emailController.dispose();
medNoController.dispose();
medNameController.dispose();
medSchemeController.dispose();
addressController.dispose();
medAidController.dispose();
medMainMemController.dispose();
medAidCodeController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
medAidController.addListener(isRequired);

View File

@@ -536,6 +536,24 @@ class _EditPatientState extends State<EditPatient> {
}
}
@override
void dispose() {
idController.dispose();
fnameController.dispose();
lnameController.dispose();
cellController.dispose();
emailController.dispose();
medNoController.dispose();
medNameController.dispose();
medSchemeController.dispose();
addressController.dispose();
medAidController.dispose();
medMainMemController.dispose();
medAidCodeController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
getLoginUserEmail();

View File

@@ -428,6 +428,13 @@ class _PatientManagerState extends State<PatientManager> {
}
}
@override
void dispose() {
searchController.dispose();
queueDateController.dispose();
super.dispose();
}
@override
void initState() {
patientSearchResults = fetchPatients("abc");

View File

@@ -48,6 +48,12 @@ class _PatientViewState extends State<PatientView> {
return null;
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
// loadImage();

View File

@@ -57,6 +57,12 @@ class _PatientViewState extends State<PatientViewPersonal> {
// }
// }
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
// loadImage();

View File

@@ -197,6 +197,23 @@ class _ProfileBusinessAddState extends State<ProfileBusinessAdd> {
return regex.hasMatch(text);
}
@override
void dispose() {
nameController.dispose();
typeController.dispose();
regController.dispose();
logonameController.dispose();
fnameController.dispose();
lnameController.dispose();
titleController.dispose();
signtureController.dispose();
accessController.dispose();
contactController.dispose();
emailController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
setState(() {

View File

@@ -265,6 +265,23 @@ class _ProfileBusinessUpdateState extends State<ProfileBusinessUpdate> {
return regex.hasMatch(text);
}
@override
void dispose() {
nameController.dispose();
typeController.dispose();
regController.dispose();
logonameController.dispose();
fnameController.dispose();
lnameController.dispose();
titleController.dispose();
signtureController.dispose();
accessController.dispose();
contactController.dispose();
emailController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
setState(() {

View File

@@ -142,6 +142,15 @@ class _ProfileUserUpdateState extends State<ProfileUserUpdate> {
}
}
@override
void dispose() {
usernameController.dispose();
fnameController.dispose();
lnameController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
void initState() {
setState(() {

View File

@@ -225,6 +225,15 @@ class _RegisterState extends State<Register> {
});
}
@override
void dispose() {
emailController.dispose();
passwordController.dispose();
officeID.dispose();
_focusNode.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return KeyboardListener(

View File

@@ -100,6 +100,14 @@ class _SignInState extends State<SignIn> {
}
}
@override
void dispose() {
emailController.dispose();
passwordController.dispose();
_focusNode.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return KeyboardListener(