QOL: Mzansi Wallet Package performance improvements pt2

This commit is contained in:
2025-11-28 13:02:34 +02:00
parent 4f168c5b0e
commit cea8ccab5a
3 changed files with 28 additions and 44 deletions

View File

@@ -659,8 +659,6 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
MzansiWalletProvider walletProvider, MzansiWalletProvider walletProvider,
Widget? child) { Widget? child) {
return GridView.builder( return GridView.builder(
physics: const NeverScrollableScrollPhysics(),
shrinkWrap: true,
padding: EdgeInsets.only( padding: EdgeInsets.only(
left: getHorizontalPaddingSize(size), left: getHorizontalPaddingSize(size),
right: getHorizontalPaddingSize(size), right: getHorizontalPaddingSize(size),

View File

@@ -1,6 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:mzansi_innovation_hub/mih_providers/mzansi_wallet_provider.dart'; import 'package:mzansi_innovation_hub/mih_providers/mzansi_wallet_provider.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_single_child_scroll.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_package_tool_body.dart'; import 'package:mzansi_innovation_hub/mih_package_components/mih_package_tool_body.dart';
import 'package:mzansi_innovation_hub/mih_objects/loyalty_card.dart'; import 'package:mzansi_innovation_hub/mih_objects/loyalty_card.dart';
import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/builder/build_loyalty_card_list.dart'; import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/builder/build_loyalty_card_list.dart';
@@ -40,21 +39,11 @@ class _MihCardFavouritesState extends State<MihCardFavourites> {
} }
Widget getBody() { Widget getBody() {
return Stack( return BuildLoyaltyCardList(
children: [ cardList: listOfCards,
MihSingleChildScroll( navIndex: 0,
child: Column( favouritesMode: true,
children: [ searchText: TextEditingController(),
BuildLoyaltyCardList(
cardList: listOfCards,
navIndex: 0,
favouritesMode: true,
searchText: TextEditingController(),
),
],
),
),
],
); );
} }
} }

View File

@@ -3,7 +3,6 @@ import 'package:mzansi_innovation_hub/main.dart';
import 'package:mzansi_innovation_hub/mih_providers/mzansi_wallet_provider.dart'; import 'package:mzansi_innovation_hub/mih_providers/mzansi_wallet_provider.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/components/mih_add_card_window.dart'; import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/components/mih_add_card_window.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_single_child_scroll.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_package_tool_body.dart'; import 'package:mzansi_innovation_hub/mih_package_components/mih_package_tool_body.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_floating_menu.dart'; import 'package:mzansi_innovation_hub/mih_package_components/mih_floating_menu.dart';
import 'package:mzansi_innovation_hub/mih_package_components/mih_search_bar.dart'; import 'package:mzansi_innovation_hub/mih_package_components/mih_search_bar.dart';
@@ -111,30 +110,28 @@ class _MihCardsState extends State<MihCards> {
} }
return Stack( return Stack(
children: [ children: [
MihSingleChildScroll( Column(
child: Column( children: [
children: [ Padding(
Padding( padding: EdgeInsets.symmetric(horizontal: width / 20),
padding: EdgeInsets.symmetric(horizontal: width / 20), child: MihSearchBar(
child: MihSearchBar( controller: cardSearchController,
controller: cardSearchController, hintText: "Search Cards",
hintText: "Search Cards", // prefixIcon: Icons.search,
// prefixIcon: Icons.search, prefixIcon: Icons.search,
prefixIcon: Icons.search, fillColor: MihColors.getSecondaryColor(
fillColor: MihColors.getSecondaryColor( MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
MzansiInnovationHub.of(context)!.theme.mode == hintColor: MihColors.getPrimaryColor(
"Dark"), MzansiInnovationHub.of(context)!.theme.mode == "Dark"),
hintColor: MihColors.getPrimaryColor( onPrefixIconTap: () {
MzansiInnovationHub.of(context)!.theme.mode == // print("Search Icon Pressed: ${cardSearchController.text}");
"Dark"), },
onPrefixIconTap: () { searchFocusNode: searchFocusNode,
// print("Search Icon Pressed: ${cardSearchController.text}");
},
searchFocusNode: searchFocusNode,
),
), ),
const SizedBox(height: 10), ),
ValueListenableBuilder<List<MIHLoyaltyCard>>( const SizedBox(height: 10),
Expanded(
child: ValueListenableBuilder<List<MIHLoyaltyCard>>(
valueListenable: searchShopName, valueListenable: searchShopName,
builder: (context, filteredCards, child) { builder: (context, filteredCards, child) {
return BuildLoyaltyCardList( return BuildLoyaltyCardList(
@@ -145,8 +142,8 @@ class _MihCardsState extends State<MihCards> {
); );
}, },
), ),
], ),
), ],
), ),
Positioned( Positioned(
right: 10, right: 10,