chore: tints depend on light and dark theme (#1470)

This commit is contained in:
Richard Shiue 2022-11-22 20:06:32 +08:00 committed by GitHub
parent 5a8f1db5a6
commit 63059ea39d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 63 additions and 18 deletions

View File

@ -10,23 +10,23 @@ extension SelectOptionColorExtension on SelectOptionColorPB {
Color make(BuildContext context) { Color make(BuildContext context) {
switch (this) { switch (this) {
case SelectOptionColorPB.Purple: case SelectOptionColorPB.Purple:
return AFThemeExtension.tint1; return AFThemeExtension.of(context).tint1;
case SelectOptionColorPB.Pink: case SelectOptionColorPB.Pink:
return AFThemeExtension.tint2; return AFThemeExtension.of(context).tint2;
case SelectOptionColorPB.LightPink: case SelectOptionColorPB.LightPink:
return AFThemeExtension.tint3; return AFThemeExtension.of(context).tint3;
case SelectOptionColorPB.Orange: case SelectOptionColorPB.Orange:
return AFThemeExtension.tint4; return AFThemeExtension.of(context).tint4;
case SelectOptionColorPB.Yellow: case SelectOptionColorPB.Yellow:
return AFThemeExtension.tint5; return AFThemeExtension.of(context).tint5;
case SelectOptionColorPB.Lime: case SelectOptionColorPB.Lime:
return AFThemeExtension.tint6; return AFThemeExtension.of(context).tint6;
case SelectOptionColorPB.Green: case SelectOptionColorPB.Green:
return AFThemeExtension.tint7; return AFThemeExtension.of(context).tint7;
case SelectOptionColorPB.Aqua: case SelectOptionColorPB.Aqua:
return AFThemeExtension.tint8; return AFThemeExtension.of(context).tint8;
case SelectOptionColorPB.Blue: case SelectOptionColorPB.Blue:
return AFThemeExtension.tint9; return AFThemeExtension.of(context).tint9;
default: default:
throw ArgumentError; throw ArgumentError;
} }

View File

@ -5,15 +5,15 @@ class AFThemeExtension extends ThemeExtension<AFThemeExtension> {
final Color? warning; final Color? warning;
final Color? success; final Color? success;
static Color tint1 = const Color(0xffe8e0ff); final Color tint1;
static Color tint2 = const Color(0xffffe7fd); final Color tint2;
static Color tint3 = const Color(0xffffe7ee); final Color tint3;
static Color tint4 = const Color(0xffffefe3); final Color tint4;
static Color tint5 = const Color(0xfffff2cd); final Color tint5;
static Color tint6 = const Color(0xfff5ffdc); final Color tint6;
static Color tint7 = const Color(0xffddffd6); final Color tint7;
static Color tint8 = const Color(0xffdefff1); final Color tint8;
static Color tint9 = const Color(0xffe1fbff); final Color tint9;
final Color greyHover; final Color greyHover;
final Color greySelect; final Color greySelect;
@ -27,6 +27,15 @@ class AFThemeExtension extends ThemeExtension<AFThemeExtension> {
const AFThemeExtension({ const AFThemeExtension({
required this.warning, required this.warning,
required this.success, required this.success,
required this.tint1,
required this.tint2,
required this.tint3,
required this.tint4,
required this.tint5,
required this.tint6,
required this.tint7,
required this.tint8,
required this.tint9,
required this.greyHover, required this.greyHover,
required this.greySelect, required this.greySelect,
required this.lightGreyHover, required this.lightGreyHover,
@ -44,6 +53,15 @@ class AFThemeExtension extends ThemeExtension<AFThemeExtension> {
AFThemeExtension copyWith({ AFThemeExtension copyWith({
Color? warning, Color? warning,
Color? success, Color? success,
Color? tint1,
Color? tint2,
Color? tint3,
Color? tint4,
Color? tint5,
Color? tint6,
Color? tint7,
Color? tint8,
Color? tint9,
Color? greyHover, Color? greyHover,
Color? greySelect, Color? greySelect,
Color? lightGreyHover, Color? lightGreyHover,
@ -55,6 +73,15 @@ class AFThemeExtension extends ThemeExtension<AFThemeExtension> {
return AFThemeExtension( return AFThemeExtension(
warning: warning ?? this.warning, warning: warning ?? this.warning,
success: success ?? this.success, success: success ?? this.success,
tint1: tint1 ?? this.tint1,
tint2: tint2 ?? this.tint2,
tint3: tint3 ?? this.tint3,
tint4: tint4 ?? this.tint4,
tint5: tint5 ?? this.tint5,
tint6: tint6 ?? this.tint6,
tint7: tint7 ?? this.tint7,
tint8: tint8 ?? this.tint8,
tint9: tint9 ?? this.tint9,
greyHover: greyHover ?? this.greyHover, greyHover: greyHover ?? this.greyHover,
greySelect: greySelect ?? this.greySelect, greySelect: greySelect ?? this.greySelect,
lightGreyHover: lightGreyHover ?? this.lightGreyHover, lightGreyHover: lightGreyHover ?? this.lightGreyHover,
@ -74,6 +101,15 @@ class AFThemeExtension extends ThemeExtension<AFThemeExtension> {
return AFThemeExtension( return AFThemeExtension(
warning: Color.lerp(warning, other.warning, t), warning: Color.lerp(warning, other.warning, t),
success: Color.lerp(success, other.success, t), success: Color.lerp(success, other.success, t),
tint1: Color.lerp(tint1, other.tint1, t)!,
tint2: Color.lerp(tint2, other.tint2, t)!,
tint3: Color.lerp(tint3, other.tint3, t)!,
tint4: Color.lerp(tint4, other.tint4, t)!,
tint5: Color.lerp(tint5, other.tint5, t)!,
tint6: Color.lerp(tint6, other.tint6, t)!,
tint7: Color.lerp(tint7, other.tint7, t)!,
tint8: Color.lerp(tint8, other.tint8, t)!,
tint9: Color.lerp(tint9, other.tint9, t)!,
greyHover: Color.lerp(greyHover, other.greyHover, t)!, greyHover: Color.lerp(greyHover, other.greyHover, t)!,
greySelect: Color.lerp(greySelect, other.greySelect, t)!, greySelect: Color.lerp(greySelect, other.greySelect, t)!,
lightGreyHover: Color.lerp(lightGreyHover, other.lightGreyHover, t)!, lightGreyHover: Color.lerp(lightGreyHover, other.lightGreyHover, t)!,

View File

@ -199,6 +199,15 @@ class AppTheme {
AFThemeExtension( AFThemeExtension(
warning: yellow, warning: yellow,
success: green, success: green,
tint1: tint1,
tint2: tint2,
tint3: tint3,
tint4: tint4,
tint5: tint5,
tint6: tint6,
tint7: tint7,
tint8: tint8,
tint9: tint9,
greyHover: bg2, greyHover: bg2,
greySelect: bg3, greySelect: bg3,
lightGreyHover: shader6, lightGreyHover: shader6,