mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-17 05:41:29 +02:00
* Add Black theme * Fix black theme * Add WixMadefor Font * feat: Enhance theme setup This change: - Adds support for custom themes - Updates theme retrieval logic to ensure the right theme is used based on user preferences(especially for custom themes). * Add black custom colors * Add custom accent colors * feat: Restructure custom colors handling for themes * feat: Integrate new custom colors structure across various components - WIP * feat: Integrate new custom colors structure across various components, black theme now ready for tests * feat: Add new accent color themes and update theme selection UI - Enhanced theme selection UI in display settings to support accent color choices. - Updated theme handling logic to accommodate new accent color variants. * Minor updates to display_settings_page.dart * Update settings_theme_choice.dart * Revert accidental change in display_settings_page.dart * Revert WixMadeFor font, fix SVG colors for CakeImageWidget, and test some color changes * Update Monero Orange * fix: Remove unused custom colors * Test outline * Test spacing and colors * Add padding * Remove outline * Add other accent colors * Update display_settings_view_model.dart * Update names and fix switch case * Add outline and update dark_theme.dart colors * Add gradient to option_tile.dart * Update icons * Update some colors * Switch option_tile.dart to TextButton * Add updated icons * Fix icon resolution * Cleanup old icons + Update pubspec_base.yaml * Remove unused fonts * Update more icons * Update image paths * Remove more icons + update some component colors * Add back DAI icon * Fix errors * feat: Implement OLED mode for BlackTheme * feat: Add OLED mode for BlackTheme and localizations * feat: Implement OLED mode for Black Theme * refactor: Remove unused theme parameters and set up easy access to toggleKnob custom colors * fix: Cleanup UI and overflows * feat: Persist black theme selection if OS theme mode while app is in system mode * fix: OS theme change when app is in background restrict pin screen from proceed * Fix theme picker sizing * Update lib/src/screens/dashboard/desktop_widgets/desktop_wallet_selection_dropdown.dart Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com> * refactor: Enhance theme access by introducing ThemeX extension for easier retrieval of current theme and custom colors * refactor: Remove currentTheme parameter from GradientBackground widget and adjust across affected widgets * refactor: Remove currentTheme parameter from StandardSwitch and SettingsSwitcherCell, using ThemeX extension for theme access * refactor: Remove currentTheme parameter from various widgets dependent on SettingsSwitcherCell and StandardxSwitcher, using ThemeX extension for theme access * refactor: Remove currentTheme in bottomsheets and related widgets, switching to theme extension * refactor: Remove constructor theme access in OptionTile and related widgets, switching to theme extension * refactor: Switch bottomsheet related widgets to use theme extension instead of constructor access * refactor: Migrate currentTheme access from constructor based to extension base * refactor: Switch theme access from constructor base to extension base [skip ci] * refactor: Migrate more widgets to use extension based theme access and clean up code * refactor: Update theme access across multiple widgets to use the new theme extension * refactor: Clean up theme access in various widgets, moving to extension-based theme usage * refactor: Make theme picker preview responsive * fix: Persist saved black theme accent when app is put in background and brought back * remove unused variables [skip ci] --------- Co-authored-by: Blazebrain <davidadegoke16@gmail.com> Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
102 lines
2.8 KiB
Dart
102 lines
2.8 KiB
Dart
import 'package:cake_wallet/themes/core/material_base_theme.dart';
|
|
import 'package:cake_wallet/themes/theme_classes/dark_theme.dart';
|
|
import 'package:cake_wallet/themes/theme_classes/light_theme.dart';
|
|
import 'package:cake_wallet/themes/theme_classes/black_theme.dart';
|
|
|
|
class ThemeList {
|
|
static final all = [
|
|
darkTheme,
|
|
lightTheme,
|
|
blackThemeCakePrimary,
|
|
blackThemeBCHGreen,
|
|
blackThemeBitcoinYellow,
|
|
blackThemeMoneroOrange,
|
|
blackThemeTronRed,
|
|
blackThemeFrostingPurple,
|
|
];
|
|
|
|
static final lightTheme = LightTheme();
|
|
static final darkTheme = DarkTheme();
|
|
|
|
static final blackThemeCakePrimary = BlackTheme(BlackThemeAccentColor.cakePrimary);
|
|
static final blackThemeCakePrimaryOled = BlackTheme(
|
|
BlackThemeAccentColor.cakePrimary,
|
|
isOled: true,
|
|
);
|
|
|
|
static final blackThemeBitcoinYellow = BlackTheme(BlackThemeAccentColor.bitcoinYellow);
|
|
static final blackThemeBitcoinYellowOled = BlackTheme(
|
|
BlackThemeAccentColor.bitcoinYellow,
|
|
isOled: true,
|
|
);
|
|
|
|
static final blackThemeMoneroOrange = BlackTheme(BlackThemeAccentColor.moneroOrange);
|
|
static final blackThemeMoneroOrangeOled = BlackTheme(
|
|
BlackThemeAccentColor.moneroOrange,
|
|
isOled: true,
|
|
);
|
|
|
|
static final blackThemeBCHGreen = BlackTheme(BlackThemeAccentColor.bchGreen);
|
|
static final blackThemeBCHGreenOled = BlackTheme(
|
|
BlackThemeAccentColor.bchGreen,
|
|
isOled: true,
|
|
);
|
|
|
|
static final blackThemeTronRed = BlackTheme(BlackThemeAccentColor.tronRed);
|
|
static final blackThemeTronRedOled = BlackTheme(
|
|
BlackThemeAccentColor.tronRed,
|
|
isOled: true,
|
|
);
|
|
|
|
static final blackThemeFrostingPurple = BlackTheme(BlackThemeAccentColor.frostingPurple);
|
|
static final blackThemeFrostingPurpleOled = BlackTheme(
|
|
BlackThemeAccentColor.frostingPurple,
|
|
isOled: true,
|
|
);
|
|
|
|
static MaterialThemeBase deserialize({required int raw}) {
|
|
switch (raw) {
|
|
case 0:
|
|
case 2:
|
|
case 4:
|
|
case 5:
|
|
case 7:
|
|
case 10:
|
|
case 11:
|
|
return lightTheme;
|
|
case 1:
|
|
case 3:
|
|
case 6:
|
|
case 8:
|
|
case 9:
|
|
return darkTheme;
|
|
case 12:
|
|
return blackThemeCakePrimary;
|
|
case 13:
|
|
return blackThemeBCHGreen;
|
|
case 14:
|
|
return blackThemeBitcoinYellow;
|
|
case 15:
|
|
return blackThemeMoneroOrange;
|
|
case 16:
|
|
return blackThemeTronRed;
|
|
case 17:
|
|
return blackThemeFrostingPurple;
|
|
case 112:
|
|
return blackThemeCakePrimaryOled;
|
|
case 113:
|
|
return blackThemeBCHGreenOled;
|
|
case 114:
|
|
return blackThemeBitcoinYellowOled;
|
|
case 115:
|
|
return blackThemeMoneroOrangeOled;
|
|
case 116:
|
|
return blackThemeTronRedOled;
|
|
case 117:
|
|
return blackThemeFrostingPurpleOled;
|
|
default:
|
|
return blackThemeCakePrimary;
|
|
}
|
|
}
|
|
}
|