fix-colors-for-address-tile-send-UI (#2113)
* Update confirm_sending_bottom_sheet_widget.dart * Update standard_slide_button_widget.dart
Serhii committed
Mar 24, 2025 at 22:11 UTC
13dc6de8dd697a2dd2f458917326f7a3885edca1
2 files changed
+36
-11
lib/src/widgets/bottom_sheet/confirm_sending_bottom_sheet_widget.dart
+26
-6
@@ -3,6 +3,7 @@ import 'package:cake_wallet/src/widgets/standard_slide_button_widget.dart';
3
import 'package:cake_wallet/themes/extensions/balance_page_theme.dart';
4
import 'package:cake_wallet/themes/extensions/cake_text_theme.dart';
5
import 'package:cake_wallet/themes/extensions/filter_theme.dart';
6
+import 'package:cake_wallet/themes/extensions/sync_indicator_theme.dart';
7
import 'package:cake_wallet/themes/theme_base.dart';
8
import 'package:cake_wallet/view_model/send/output.dart';
9
import 'package:cw_core/crypto_currency.dart';
@@ -71,6 +72,12 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
72
decoration: TextDecoration.none,
73
);
74
75
+ final tileBackgroundColor = currentTheme.type == ThemeType.light
76
+ ? Theme.of(context).extension<SyncIndicatorTheme>()!.syncedBackgroundColor
77
+ : currentTheme.type == ThemeType.oled
78
+ ? Colors.black.withOpacity(0.5)
79
+ : Theme.of(context).extension<FilterTheme>()!.buttonColor;
80
+
81
Widget content = Padding(
82
padding: EdgeInsets.fromLTRB(8, 0, showScrollbar ? 16 : 8, 8),
83
child: Column(
@@ -86,6 +93,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
93
amount: '',
94
address: paymentIdValue!,
95
itemSubTitleTextStyle: itemSubTitleTextStyle,
96
+ tileBackgroundColor: tileBackgroundColor,
97
),
98
),
99
StandardTile(
@@ -94,6 +102,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
102
itemTitleTextStyle: itemTitleTextStyle,
103
itemSubTitle: fiatAmountValue,
104
itemSubTitleTextStyle: itemSubTitleTextStyle,
105
+ tileBackgroundColor: tileBackgroundColor,
106
),
107
const SizedBox(height: 8),
108
StandardTile(
@@ -102,6 +111,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
111
itemTitleTextStyle: itemTitleTextStyle,
112
itemSubTitle: feeFiatAmount,
113
itemSubTitleTextStyle: itemSubTitleTextStyle,
114
+ tileBackgroundColor: tileBackgroundColor,
115
),
116
const SizedBox(height: 8),
117
Column(
@@ -130,6 +140,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
140
isBatchSending: isBatchSending,
141
itemTitleTextStyle: itemTitleTextStyle,
142
itemSubTitleTextStyle: itemSubTitleTextStyle,
143
+ tileBackgroundColor: tileBackgroundColor,
144
)
145
: AddressTile(
146
itemTitle: 'Address',
@@ -139,6 +150,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
150
amount: _amount,
151
address: _address,
152
itemSubTitleTextStyle: itemSubTitleTextStyle,
153
+ tileBackgroundColor: tileBackgroundColor,
154
);
155
},
156
),
@@ -154,6 +166,7 @@ class ConfirmSendingBottomSheet extends BaseBottomSheet {
166
isBatchSending: true,
167
itemTitleTextStyle: itemTitleTextStyle,
168
itemSubTitleTextStyle: itemSubTitleTextStyle,
169
+ tileBackgroundColor: tileBackgroundColor,
170
),
171
),
172
],
@@ -214,6 +227,7 @@ class StandardTile extends StatelessWidget {
227
required this.itemTitleTextStyle,
228
this.itemSubTitle,
229
required this.itemSubTitleTextStyle,
230
+ required this.tileBackgroundColor,
231
});
232
233
final String itemTitle;
@@ -221,14 +235,14 @@ class StandardTile extends StatelessWidget {
235
final TextStyle itemTitleTextStyle;
236
final String? itemSubTitle;
237
final TextStyle itemSubTitleTextStyle;
238
+ final Color tileBackgroundColor;
239
240
@override
241
Widget build(BuildContext context) {
242
return Container(
243
padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 8),
229
- decoration: BoxDecoration(
230
- borderRadius: BorderRadius.circular(10),
231
- color: Theme.of(context).extension<FilterTheme>()!.buttonColor),
244
+ decoration:
245
+ BoxDecoration(borderRadius: BorderRadius.circular(10), color: tileBackgroundColor),
246
child: Row(
247
mainAxisAlignment: MainAxisAlignment.spaceBetween,
248
children: [
@@ -258,6 +272,7 @@ class AddressTile extends StatelessWidget {
272
required this.amount,
273
required this.address,
274
required this.itemSubTitleTextStyle,
275
+ required this.tileBackgroundColor,
276
});
277
278
final String itemTitle;
@@ -267,6 +282,7 @@ class AddressTile extends StatelessWidget {
282
final String amount;
283
final String address;
284
final TextStyle itemSubTitleTextStyle;
285
+ final Color tileBackgroundColor;
286
287
@override
288
Widget build(BuildContext context) {
@@ -283,7 +299,7 @@ class AddressTile extends StatelessWidget {
299
padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 8),
300
decoration: BoxDecoration(
301
borderRadius: BorderRadius.circular(10),
286
- color: Theme.of(context).extension<FilterTheme>()!.buttonColor,
302
+ color: tileBackgroundColor,
303
),
304
child: Column(
305
crossAxisAlignment: CrossAxisAlignment.start,
@@ -343,6 +359,7 @@ class AddressExpansionTile extends StatelessWidget {
359
required this.isBatchSending,
360
required this.itemTitleTextStyle,
361
required this.itemSubTitleTextStyle,
362
+ required this.tileBackgroundColor,
363
});
364
365
final String contactType;
@@ -353,6 +370,7 @@ class AddressExpansionTile extends StatelessWidget {
370
final bool isBatchSending;
371
final TextStyle itemTitleTextStyle;
372
final TextStyle itemSubTitleTextStyle;
373
+ final Color tileBackgroundColor;
374
375
@override
376
Widget build(BuildContext context) {
@@ -369,7 +387,7 @@ class AddressExpansionTile extends StatelessWidget {
387
return Container(
388
decoration: BoxDecoration(
389
borderRadius: BorderRadius.all(Radius.circular(10)),
372
- color: Theme.of(context).extension<FilterTheme>()!.buttonColor,
390
+ color: tileBackgroundColor,
391
),
392
child: Theme(
393
data: Theme.of(context).copyWith(dividerColor: Colors.transparent),
@@ -383,7 +401,9 @@ class AddressExpansionTile extends StatelessWidget {
401
title: Row(
402
mainAxisAlignment: MainAxisAlignment.spaceBetween,
403
children: [
386
- Expanded(child: Text(isBatchSending ? name : contactType, style: itemTitleTextStyle, softWrap: true)),
404
+ Expanded(
405
+ child: Text(isBatchSending ? name : contactType,
406
+ style: itemTitleTextStyle, softWrap: true)),
407
Text(isBatchSending ? amount : name,
408
style: TextStyle(
409
fontSize: 14,
lib/src/widgets/standard_slide_button_widget.dart
+10
-5
@@ -1,6 +1,7 @@
1
import 'package:cake_wallet/themes/extensions/cake_text_theme.dart';
2
import 'package:cake_wallet/themes/extensions/filter_theme.dart';
3
import 'package:cake_wallet/themes/extensions/menu_theme.dart';
4
+import 'package:cake_wallet/themes/extensions/sync_indicator_theme.dart';
5
import 'package:cake_wallet/themes/theme_base.dart';
6
import 'package:flutter/material.dart';
7
@@ -33,13 +34,17 @@ class _StandardSlideButtonState extends State<StandardSlideButton> {
34
final double effectiveMaxWidth = maxWidth - 2 * sideMargin;
35
const double sliderWidth = 42.0;
36
37
+ final tileBackgroundColor = widget.currentTheme.type == ThemeType.light
38
+ ? Theme.of(context).extension<SyncIndicatorTheme>()!.syncedBackgroundColor
39
+ : widget.currentTheme.type == ThemeType.oled
40
+ ? Colors.black.withOpacity(0.5)
41
+ : Theme.of(context).extension<FilterTheme>()!.buttonColor;
42
+
43
return Container(
44
height: widget.height,
45
decoration: BoxDecoration(
46
borderRadius: BorderRadius.circular(10),
40
- color: widget.currentTheme.type == ThemeType.light || widget.currentTheme.type == ThemeType.bright
41
- ? Theme.of(context).disabledColor
42
- : widget.currentTheme.type == ThemeType.oled ? Colors.black : Theme.of(context).extension<CakeMenuTheme>()!.backgroundColor),
47
+ color: tileBackgroundColor),
48
child: Stack(
49
alignment: Alignment.centerLeft,
50
children: [
@@ -74,11 +79,11 @@ class _StandardSlideButtonState extends State<StandardSlideButton> {
79
height: widget.height - 8,
80
decoration: BoxDecoration(
81
borderRadius: BorderRadius.circular(10),
77
- color: widget.currentTheme.type == ThemeType.bright ? Theme.of(context).extension<CakeMenuTheme>()!.backgroundColor : Theme.of(context).extension<FilterTheme>()!.buttonColor,
82
+ color: Theme.of(context).extension<CakeTextTheme>()!.titleColor,
83
),
84
alignment: Alignment.center,
85
child: Icon(Icons.arrow_forward,
81
- color: Theme.of(context).extension<CakeTextTheme>()!.titleColor),
86
+ color: widget.currentTheme.type == ThemeType.bright ? Theme.of(context).extension<CakeMenuTheme>()!.backgroundColor : Theme.of(context).extension<FilterTheme>()!.buttonColor),
87
),
88
),
89
)