changed primary color usage to fix the color bug in dark mode
Changed Theme.of(context).primaryColor to Theme.of(contex).colorScheme.primary to make dark mode work properly.
This commit is contained in:
50
lib/app.dart
50
lib/app.dart
@@ -85,29 +85,28 @@ class _KMobileState extends State<KMobile> {
|
||||
child: BlocBuilder<ThemeCubit, ThemeState>(
|
||||
builder: (context, themeState) {
|
||||
return BlocBuilder<ThemeModeCubit, ThemeModeState>(
|
||||
builder: (context, modeState) {
|
||||
return MaterialApp(
|
||||
debugShowCheckedModeBanner: false,
|
||||
locale: _locale ?? const Locale('en'),
|
||||
supportedLocales: const [
|
||||
Locale('en'),
|
||||
Locale('hi'),
|
||||
],
|
||||
localizationsDelegates: const [
|
||||
AppLocalizations.delegate,
|
||||
GlobalMaterialLocalizations.delegate,
|
||||
GlobalWidgetsLocalizations.delegate,
|
||||
GlobalCupertinoLocalizations.delegate,
|
||||
],
|
||||
title: 'kMobile',
|
||||
theme: themeState.getLightThemeData(),
|
||||
darkTheme: themeState.getDarkThemeData(),
|
||||
themeMode: context.watch<ThemeModeCubit>().state.mode,
|
||||
onGenerateRoute: AppRoutes.generateRoute,
|
||||
initialRoute: AppRoutes.splash,
|
||||
home: showSplash ? const SplashScreen() : const AuthGate(),
|
||||
);
|
||||
|
||||
builder: (context, modeState) {
|
||||
return MaterialApp(
|
||||
debugShowCheckedModeBanner: false,
|
||||
locale: _locale ?? const Locale('en'),
|
||||
supportedLocales: const [
|
||||
Locale('en'),
|
||||
Locale('hi'),
|
||||
],
|
||||
localizationsDelegates: const [
|
||||
AppLocalizations.delegate,
|
||||
GlobalMaterialLocalizations.delegate,
|
||||
GlobalWidgetsLocalizations.delegate,
|
||||
GlobalCupertinoLocalizations.delegate,
|
||||
],
|
||||
title: 'kMobile',
|
||||
theme: themeState.getLightThemeData(),
|
||||
darkTheme: themeState.getDarkThemeData(),
|
||||
themeMode: context.watch<ThemeModeCubit>().state.mode,
|
||||
onGenerateRoute: AppRoutes.generateRoute,
|
||||
initialRoute: AppRoutes.splash,
|
||||
home: showSplash ? const SplashScreen() : const AuthGate(),
|
||||
);
|
||||
},
|
||||
);
|
||||
},
|
||||
@@ -344,8 +343,9 @@ class _NavigationScaffoldState extends State<NavigationScaffold> {
|
||||
currentIndex: _selectedIndex,
|
||||
type: BottomNavigationBarType.fixed,
|
||||
backgroundColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
selectedItemColor: Theme.of(context).primaryColor,
|
||||
unselectedItemColor: Theme.of(context).colorScheme.onSurface.withOpacity(0.6),
|
||||
selectedItemColor: Theme.of(context).colorScheme.primary,
|
||||
unselectedItemColor:
|
||||
Theme.of(context).colorScheme.onSurface.withValues(alpha: 0.7),
|
||||
onTap: (index) {
|
||||
setState(() {
|
||||
_selectedIndex = index;
|
||||
|
@@ -3,4 +3,5 @@ enum ThemeType {
|
||||
green,
|
||||
orange,
|
||||
blue,
|
||||
yellow,
|
||||
}
|
||||
|
@@ -38,16 +38,17 @@ class AppThemes {
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
import 'dart:developer';
|
||||
|
||||
import 'package:flutter/material.dart';import 'theme_type.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'theme_type.dart';
|
||||
import 'package:google_fonts/google_fonts.dart';
|
||||
class AppThemes {
|
||||
static ThemeData getLightTheme(ThemeType type) {
|
||||
|
||||
class AppThemes {
|
||||
static ThemeData getLightTheme(ThemeType type) {
|
||||
print('inside get light theme');
|
||||
final Color seedColor = _getSeedColor(type);
|
||||
final colorScheme = ColorScheme.fromSeed(
|
||||
final Color seedColor = _getSeedColor(type);
|
||||
final colorScheme = ColorScheme.fromSeed(
|
||||
seedColor: seedColor,
|
||||
brightness: Brightness.light,
|
||||
);
|
||||
@@ -64,27 +65,28 @@ class AppThemes {
|
||||
// ),
|
||||
// );
|
||||
}
|
||||
static ThemeData getDarkTheme(ThemeType type) {
|
||||
print('inside get dark theme');
|
||||
final Color seedColor = _getSeedColor(type);
|
||||
log(seedColor.toString());
|
||||
final colorScheme = ColorScheme.fromSeed(
|
||||
seedColor: seedColor,
|
||||
brightness: Brightness.dark,
|
||||
// Define custom background and surface colors for better contrast
|
||||
// background: const Color(0xFF121212), // A common dark theme background c
|
||||
// surface: const Color(0xFF1E1E1E), // A slightly lighter surface color
|
||||
);
|
||||
|
||||
return ThemeData.from(
|
||||
colorScheme: colorScheme,
|
||||
useMaterial3: true,
|
||||
textTheme: GoogleFonts.rubikTextTheme(
|
||||
ThemeData(brightness: Brightness.dark).textTheme,
|
||||
),
|
||||
);
|
||||
|
||||
// .copyWith(
|
||||
static ThemeData getDarkTheme(ThemeType type) {
|
||||
print('inside get dark theme');
|
||||
final Color seedColor = _getSeedColor(type);
|
||||
log(seedColor.toString());
|
||||
final colorScheme = ColorScheme.fromSeed(
|
||||
seedColor: seedColor,
|
||||
brightness: Brightness.dark,
|
||||
// Define custom background and surface colors for better contrast
|
||||
// background: const Color(0xFF121212), // A common dark theme background c
|
||||
// surface: const Color(0xFF1E1E1E), // A slightly lighter surface color
|
||||
);
|
||||
|
||||
return ThemeData.from(
|
||||
colorScheme: colorScheme,
|
||||
useMaterial3: true,
|
||||
textTheme: GoogleFonts.rubikTextTheme(
|
||||
ThemeData(brightness: Brightness.dark).textTheme,
|
||||
),
|
||||
);
|
||||
|
||||
// .copyWith(
|
||||
// Explicitly set scaffold background color
|
||||
// scaffoldBackgroundColor: colorScheme.background,
|
||||
// // Customize card theme for dark mode
|
||||
@@ -114,8 +116,9 @@ class AppThemes {
|
||||
// selectedItemColor: colorScheme.primary,
|
||||
// unselectedItemColor: colorScheme.onSurface.withOpacity(0.6),
|
||||
// ),
|
||||
// );
|
||||
}
|
||||
// );
|
||||
}
|
||||
|
||||
static Color _getSeedColor(ThemeType type) {
|
||||
switch (type) {
|
||||
case ThemeType.green:
|
||||
@@ -125,8 +128,9 @@ class AppThemes {
|
||||
case ThemeType.blue:
|
||||
return Colors.blue;
|
||||
case ThemeType.violet:
|
||||
default:
|
||||
return Colors.deepPurple;
|
||||
case ThemeType.yellow:
|
||||
return Colors.yellow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -120,8 +120,6 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).accountStatement,
|
||||
style:
|
||||
const TextStyle(color: Colors.black, fontWeight: FontWeight.w500),
|
||||
),
|
||||
centerTitle: false,
|
||||
),
|
||||
@@ -190,19 +188,20 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
child: ElevatedButton(
|
||||
onPressed: _loadTransactions,
|
||||
style: ElevatedButton.styleFrom(
|
||||
backgroundColor: Theme.of(context).primaryColor,
|
||||
backgroundColor:
|
||||
Theme.of(context).colorScheme.primaryContainer,
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
),
|
||||
child: Text(
|
||||
AppLocalizations.of(context).search,
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).scaffoldBackgroundColor,
|
||||
color: Theme.of(context).colorScheme.onPrimaryContainer,
|
||||
fontSize: 16,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 35),
|
||||
const SizedBox(height: 15),
|
||||
if (!_txLoading &&
|
||||
_transactions.isNotEmpty &&
|
||||
fromDate == null &&
|
||||
@@ -214,7 +213,7 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: Colors.grey[700],
|
||||
color: Theme.of(context).colorScheme.onSurfaceVariant,
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -255,10 +254,11 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
: _transactions.isEmpty
|
||||
? Center(
|
||||
child: Text(
|
||||
AppLocalizations.of(context).noTransactions,
|
||||
style: TextStyle(
|
||||
fontSize: 16, color: Colors.grey[600]),
|
||||
),
|
||||
AppLocalizations.of(context).noTransactions,
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
)),
|
||||
)
|
||||
: ListView.separated(
|
||||
itemCount: _transactions.length,
|
||||
@@ -269,8 +269,9 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
tx.type == 'CR'
|
||||
? Symbols.call_received
|
||||
: Symbols.call_made,
|
||||
color:
|
||||
tx.type == 'CR' ? Colors.green : Colors.red,
|
||||
color: tx.type == 'CR'
|
||||
? Colors.green
|
||||
: Theme.of(context).colorScheme.error,
|
||||
),
|
||||
title: Text(
|
||||
tx.date ?? '',
|
||||
@@ -314,7 +315,8 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
return Container(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 16),
|
||||
decoration: BoxDecoration(
|
||||
border: Border.all(color: Colors.grey),
|
||||
border:
|
||||
Border.all(color: Theme.of(context).colorScheme.onSurfaceVariant),
|
||||
borderRadius: BorderRadius.circular(6),
|
||||
),
|
||||
child: Row(
|
||||
@@ -324,7 +326,9 @@ class _AccountStatementScreen extends State<AccountStatementScreen> {
|
||||
date != null ? _formatDate(date) : label,
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
color: date != null ? Colors.black : Colors.grey,
|
||||
color: date != null
|
||||
? Theme.of(context).colorScheme.onSurface
|
||||
: Theme.of(context).colorScheme.onSurfaceVariant,
|
||||
),
|
||||
),
|
||||
const Icon(Icons.arrow_drop_down),
|
||||
|
@@ -91,7 +91,7 @@ class BeneficiaryDetailsScreen extends StatelessWidget {
|
||||
CircleAvatar(
|
||||
radius: 24,
|
||||
backgroundColor: Colors.transparent,
|
||||
child: getBankLogo(beneficiary.bankName),
|
||||
child: getBankLogo(beneficiary.bankName, context),
|
||||
),
|
||||
const SizedBox(width: 16),
|
||||
Text(
|
||||
|
@@ -75,7 +75,7 @@ class _ManageBeneficiariesScreen extends State<ManageBeneficiariesScreen> {
|
||||
leading: CircleAvatar(
|
||||
radius: 24,
|
||||
backgroundColor: Colors.transparent,
|
||||
child: getBankLogo(item.bankName),
|
||||
child: getBankLogo(item.bankName, context),
|
||||
),
|
||||
title: Text(item.name),
|
||||
subtitle: Column(
|
||||
@@ -122,8 +122,6 @@ class _ManageBeneficiariesScreen extends State<ManageBeneficiariesScreen> {
|
||||
),
|
||||
);
|
||||
},
|
||||
backgroundColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
foregroundColor: Theme.of(context).primaryColor,
|
||||
elevation: 5,
|
||||
child: const Icon(Icons.add),
|
||||
),
|
||||
|
@@ -19,7 +19,9 @@ class _CustomerInfoScreenState extends State<CustomerInfoScreen> {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).customerInfo,
|
||||
AppLocalizations.of(context)
|
||||
.customerInfo
|
||||
.replaceFirst(RegExp('\n'), ''),
|
||||
),
|
||||
),
|
||||
body: SingleChildScrollView(
|
||||
|
@@ -98,7 +98,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
Widget _buildBalanceShimmer() {
|
||||
final theme = Theme.of(context);
|
||||
return Shimmer.fromColors(
|
||||
baseColor: theme.primaryColor,
|
||||
baseColor: theme.colorScheme.primary,
|
||||
highlightColor: theme.colorScheme.onPrimary,
|
||||
child: Container(
|
||||
width: 200, height: 42, color: theme.scaffoldBackgroundColor),
|
||||
@@ -213,7 +213,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
title: Text(
|
||||
AppLocalizations.of(context).kconnect,
|
||||
style: TextStyle(
|
||||
color: theme.primaryColor,
|
||||
color: theme.colorScheme.primary,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
@@ -275,7 +275,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
"${AppLocalizations.of(context).hi} $firstName!",
|
||||
style: GoogleFonts.baumans().copyWith(
|
||||
fontSize: 20,
|
||||
color: theme.primaryColor,
|
||||
color: theme.colorScheme.primary,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
@@ -289,7 +289,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
vertical: 10,
|
||||
),
|
||||
decoration: BoxDecoration(
|
||||
color: theme.primaryColor,
|
||||
color: theme.colorScheme.primary,
|
||||
borderRadius: BorderRadius.circular(16),
|
||||
),
|
||||
child: Column(
|
||||
@@ -307,7 +307,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
),
|
||||
DropdownButton<int>(
|
||||
value: selectedAccountIndex,
|
||||
dropdownColor: theme.primaryColor,
|
||||
dropdownColor: theme.colorScheme.primary,
|
||||
underline: const SizedBox(),
|
||||
icon: const Icon(Icons.keyboard_arrow_down),
|
||||
iconEnabledColor: theme.colorScheme.onPrimary,
|
||||
@@ -602,7 +602,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
AppLocalizations.of(context).noTransactions,
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
color: Colors.grey[600],
|
||||
color: Theme.of(context).colorScheme.outline,
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -663,8 +663,8 @@ class _DashboardScreenState extends State<DashboardScreen> {
|
||||
icon,
|
||||
size: 30,
|
||||
color: disable
|
||||
? theme.colorScheme.surfaceContainerHighest
|
||||
: theme.primaryColor,
|
||||
? theme.colorScheme.onSurface.withValues(alpha: 0.3)
|
||||
: theme.colorScheme.primary,
|
||||
grade: 200,
|
||||
weight: 700,
|
||||
),
|
||||
|
@@ -13,7 +13,7 @@ class AccountCard extends StatelessWidget {
|
||||
width: 300,
|
||||
padding: const EdgeInsets.all(20),
|
||||
decoration: BoxDecoration(
|
||||
color: Theme.of(context).colorScheme.onPrimary,
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
@@ -33,7 +33,7 @@ class AccountCard extends StatelessWidget {
|
||||
Text(
|
||||
account.accountType,
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).scaffoldBackgroundColor,
|
||||
color: Theme.of(context).colorScheme.onPrimary,
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
@@ -42,7 +42,7 @@ class AccountCard extends StatelessWidget {
|
||||
account.accountType == 'Savings'
|
||||
? Icons.savings
|
||||
: Icons.account_balance,
|
||||
color: Theme.of(context).scaffoldBackgroundColor,
|
||||
color: Theme.of(context).colorScheme.onPrimary,
|
||||
),
|
||||
],
|
||||
),
|
||||
@@ -50,13 +50,13 @@ class AccountCard extends StatelessWidget {
|
||||
Text(
|
||||
account.accountNumber,
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).scaffoldBackgroundColor, fontSize: 16),
|
||||
color: Theme.of(context).colorScheme.onPrimary, fontSize: 16),
|
||||
),
|
||||
const SizedBox(height: 30),
|
||||
Text(
|
||||
'${account.currency} ${account.balance.toStringAsFixed(2)}',
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).scaffoldBackgroundColor,
|
||||
color: Theme.of(context).colorScheme.onPrimary,
|
||||
fontSize: 22,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
@@ -65,10 +65,11 @@ class AccountCard extends StatelessWidget {
|
||||
Text(
|
||||
AppLocalizations.of(context).availableBalance,
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).scaffoldBackgroundColor, fontSize: 16),
|
||||
color: Theme.of(context).colorScheme.onPrimary, fontSize: 16),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -34,12 +34,13 @@ class _EnquiryScreen extends State<EnquiryScreen> {
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(role, style: const TextStyle(color: Colors.grey)),
|
||||
Text(role,
|
||||
style: TextStyle(color: Theme.of(context).colorScheme.onSurface)),
|
||||
const SizedBox(height: 4),
|
||||
GestureDetector(
|
||||
onTap: () => _launchEmailAddress(email),
|
||||
child: Text(email,
|
||||
style: TextStyle(color: Theme.of(context).primaryColor)),
|
||||
style: TextStyle(color: Theme.of(context).colorScheme.primary)),
|
||||
),
|
||||
const SizedBox(height: 4),
|
||||
GestureDetector(
|
||||
@@ -56,11 +57,7 @@ class _EnquiryScreen extends State<EnquiryScreen> {
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).enquiry,
|
||||
style:
|
||||
const TextStyle(color: Colors.black, fontWeight: FontWeight.w500),
|
||||
),
|
||||
title: Text(AppLocalizations.of(context).enquiry),
|
||||
centerTitle: false,
|
||||
),
|
||||
body: Padding(
|
||||
@@ -72,12 +69,11 @@ class _EnquiryScreen extends State<EnquiryScreen> {
|
||||
const SizedBox(height: 20),
|
||||
Text(
|
||||
AppLocalizations.of(context).writeToUs,
|
||||
style: const TextStyle(color: Colors.grey),
|
||||
),
|
||||
const SizedBox(height: 4),
|
||||
Text(
|
||||
"complaint@kccb.in",
|
||||
style: TextStyle(color: Theme.of(context).primaryColor),
|
||||
style: TextStyle(color: Theme.of(context).colorScheme.primary),
|
||||
),
|
||||
|
||||
const SizedBox(height: 20),
|
||||
@@ -85,11 +81,11 @@ class _EnquiryScreen extends State<EnquiryScreen> {
|
||||
AppLocalizations.of(context).keyContacts,
|
||||
style: TextStyle(
|
||||
fontSize: 17,
|
||||
color: Theme.of(context).primaryColor,
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
),
|
||||
// horizontal line
|
||||
),
|
||||
Divider(color: Colors.grey[300]),
|
||||
Divider(color: Theme.of(context).colorScheme.outline),
|
||||
const SizedBox(height: 16),
|
||||
_buildContactItem(
|
||||
AppLocalizations.of(context).chairman,
|
||||
|
@@ -334,7 +334,8 @@ class _FundTransferAmountScreenState extends State<FundTransferAmountScreen> {
|
||||
elevation: 0,
|
||||
margin: const EdgeInsets.symmetric(vertical: 8.0),
|
||||
child: ListTile(
|
||||
leading: getBankLogo(widget.creditBeneficiary.bankName),
|
||||
leading:
|
||||
getBankLogo(widget.creditBeneficiary.bankName, context),
|
||||
title: Text(widget.creditBeneficiary.name),
|
||||
subtitle: Text(widget.creditBeneficiary.accountNo),
|
||||
),
|
||||
@@ -367,12 +368,12 @@ class _FundTransferAmountScreenState extends State<FundTransferAmountScreen> {
|
||||
},
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
selectedColor: Theme.of(context).colorScheme.onPrimary,
|
||||
fillColor: Theme.of(context).primaryColor,
|
||||
fillColor: Theme.of(context).colorScheme.primary,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
borderColor: Colors.transparent,
|
||||
selectedBorderColor: Colors.transparent,
|
||||
splashColor: Theme.of(context).primaryColor,
|
||||
highlightColor: Theme.of(context).primaryColor,
|
||||
splashColor: Theme.of(context).colorScheme.primary,
|
||||
highlightColor: Theme.of(context).colorScheme.primary,
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
@@ -427,6 +428,7 @@ class _FundTransferAmountScreenState extends State<FundTransferAmountScreen> {
|
||||
child: Text(AppLocalizations.of(context).proceed),
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 10),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
@@ -86,7 +86,7 @@ class _FundTransferBeneficiaryScreenState
|
||||
leading: CircleAvatar(
|
||||
radius: 24,
|
||||
backgroundColor: Colors.transparent,
|
||||
child: getBankLogo(beneficiary.bankName),
|
||||
child: getBankLogo(beneficiary.bankName, context),
|
||||
),
|
||||
title: Text(beneficiary.name),
|
||||
subtitle: Column(
|
||||
|
@@ -94,7 +94,7 @@ class _TransactionPinScreenState extends State<TransactionPinScreen> {
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(color: Theme.of(context).primaryColor, width: 2),
|
||||
color: index < _pin.length
|
||||
? Theme.of(context).primaryColor
|
||||
? Theme.of(context).colorScheme.primary
|
||||
: Colors.transparent,
|
||||
),
|
||||
);
|
||||
@@ -142,11 +142,7 @@ class _TransactionPinScreenState extends State<TransactionPinScreen> {
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).tpin,
|
||||
style:
|
||||
const TextStyle(color: Colors.black, fontWeight: FontWeight.w500),
|
||||
),
|
||||
title: Text(AppLocalizations.of(context).tpin),
|
||||
centerTitle: false,
|
||||
),
|
||||
body: _loading
|
||||
|
@@ -375,8 +375,6 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).quickPayOutsideBank,
|
||||
style:
|
||||
const TextStyle(color: Colors.black, fontWeight: FontWeight.w500),
|
||||
),
|
||||
centerTitle: false,
|
||||
),
|
||||
@@ -413,10 +411,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
controller: accountNumberController,
|
||||
@@ -449,10 +449,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
keyboardType: TextInputType.number,
|
||||
@@ -484,10 +486,13 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
width: 2),
|
||||
),
|
||||
),
|
||||
controller: ifscController,
|
||||
@@ -531,10 +536,13 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
width: 2),
|
||||
),
|
||||
),
|
||||
items: [
|
||||
@@ -563,13 +571,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).dialogBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: const OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Colors.black,
|
||||
width: 2,
|
||||
),
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -584,11 +591,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).dialogBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: const OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Colors.black,
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
width: 2,
|
||||
),
|
||||
),
|
||||
@@ -631,7 +639,8 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
padding: const EdgeInsets.only(bottom: 24.0),
|
||||
child: Text(
|
||||
_validationError!,
|
||||
style: const TextStyle(color: Colors.red),
|
||||
style:
|
||||
TextStyle(color: Theme.of(context).colorScheme.error),
|
||||
),
|
||||
),
|
||||
TextFormField(
|
||||
@@ -644,10 +653,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).dialogBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
validator: (value) {
|
||||
@@ -672,10 +683,13 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
width: 2),
|
||||
),
|
||||
),
|
||||
textInputAction: TextInputAction.next,
|
||||
@@ -694,10 +708,13 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
width: 2),
|
||||
),
|
||||
),
|
||||
controller: amountController,
|
||||
@@ -734,7 +751,7 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
child: SwipeButton.expand(
|
||||
thumb: Icon(Icons.arrow_forward,
|
||||
color: Theme.of(context).dialogBackgroundColor),
|
||||
activeThumbColor: Theme.of(context).primaryColor,
|
||||
activeThumbColor: Theme.of(context).colorScheme.primary,
|
||||
activeTrackColor:
|
||||
Theme.of(context).colorScheme.secondary.withAlpha(100),
|
||||
borderRadius: BorderRadius.circular(30),
|
||||
@@ -770,12 +787,12 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
padding: const EdgeInsets.symmetric(vertical: 5),
|
||||
decoration: BoxDecoration(
|
||||
color: isSelected
|
||||
? Theme.of(context).primaryColor
|
||||
? Theme.of(context).colorScheme.primary
|
||||
: Theme.of(context).scaffoldBackgroundColor,
|
||||
borderRadius: BorderRadius.circular(5),
|
||||
border: Border.all(
|
||||
color: isSelected
|
||||
? Theme.of(context).primaryColor
|
||||
? Theme.of(context).colorScheme.primary
|
||||
: Theme.of(context).scaffoldBackgroundColor,
|
||||
width: isSelected ? 0 : 1.2,
|
||||
),
|
||||
@@ -783,7 +800,8 @@ class _QuickPayOutsideBankScreen extends State<QuickPayOutsideBankScreen> {
|
||||
alignment: Alignment.center,
|
||||
child: Text(
|
||||
transactionModes(context)[index],
|
||||
style: const TextStyle(color: Colors.black),
|
||||
style:
|
||||
TextStyle(color: Theme.of(context).colorScheme.onSurface),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@@ -90,8 +90,9 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
appBar: AppBar(
|
||||
title: Text(
|
||||
AppLocalizations.of(context).quickPayOwnBank,
|
||||
style:
|
||||
TextStyle(color: Theme.of(context).colorScheme.onSurface, fontWeight: FontWeight.w500),
|
||||
style: TextStyle(
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
fontWeight: FontWeight.w500),
|
||||
),
|
||||
centerTitle: false,
|
||||
),
|
||||
@@ -125,10 +126,12 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
controller: accountNumberController,
|
||||
@@ -154,11 +157,13 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
isDense: true,
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
keyboardType: TextInputType.number,
|
||||
@@ -239,10 +244,12 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
value: _selectedAccountType,
|
||||
@@ -276,11 +283,13 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
isDense: true,
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).scaffoldBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
controller: amountController,
|
||||
@@ -303,7 +312,7 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
child: SwipeButton.expand(
|
||||
thumb: Icon(Icons.arrow_forward,
|
||||
color: Theme.of(context).dialogBackgroundColor),
|
||||
activeThumbColor: Theme.of(context).primaryColor,
|
||||
activeThumbColor: Theme.of(context).colorScheme.primary,
|
||||
activeTrackColor: Theme.of(
|
||||
context,
|
||||
).colorScheme.secondary.withAlpha(100),
|
||||
@@ -377,11 +386,12 @@ class _QuickPayWithinBankScreen extends State<QuickPayWithinBankScreen> {
|
||||
isDense: true,
|
||||
filled: true,
|
||||
fillColor: Theme.of(context).dialogBackgroundColor,
|
||||
enabledBorder: OutlineInputBorder(
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.outline),
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(
|
||||
color: Theme.of(context).colorScheme.primary, width: 2),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
@@ -1,6 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
Widget getBankLogo(String? bankName) {
|
||||
Widget getBankLogo(String? bankName, BuildContext context) {
|
||||
if (bankName != null && bankName.toLowerCase().contains('state bank of')) {
|
||||
return Image.asset(
|
||||
'assets/images/sbi_logo.png',
|
||||
@@ -72,10 +72,10 @@ Widget getBankLogo(String? bankName) {
|
||||
height: 40,
|
||||
);
|
||||
} else {
|
||||
return const Icon(
|
||||
return Icon(
|
||||
Icons.account_balance,
|
||||
size: 40,
|
||||
color: Colors.grey,
|
||||
color: Theme.of(context).colorScheme.outline,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user