forked from cwtch.im/cwtch-ui
migrate to new libcwtch changes; add vampire and witch; tweak switch button coloring
This commit is contained in:
parent
089fee4c41
commit
dc550daaa1
|
@ -9,24 +9,6 @@ import 'opaque.dart';
|
|||
final neon1_theme = "neon1";
|
||||
final neon1_name = "Neon1"; //Todo translate
|
||||
|
||||
final Color darkGreyPurple = Color(0xFF281831);
|
||||
final Color deepPurple = Color(0xFF422850);
|
||||
final Color mauvePurple = Color(0xFF8E64A5);
|
||||
final Color whiteishPurple = Color(0xFFE3DFE4);
|
||||
final Color lightGrey = Color(0xFF9E9E9E);
|
||||
|
||||
final Color whitePurple = Color(0xFFFFFDFF);
|
||||
final Color softPurple = Color(0xFFFDF3FC);
|
||||
final Color purple = Color(0xFFDFB9DE);
|
||||
final Color brightPurple = Color(0xFFD1B0E0); // not in new: portrait badge color
|
||||
final Color darkPurple = Color(0xFF350052);
|
||||
final Color greyPurple = Color(0xFF775F84); // not in new: portrait borders
|
||||
final Color pink = Color(0xFFE85DA1); // not in new: active button color
|
||||
final Color hotPink = Color(0xFFD20070); // Color(0xFFD01972);
|
||||
final Color softGrey = Color(0xFFB3B6B3); // not in new theme: blocked
|
||||
//static final Color softGreen = Color(0xFFA0FFB0);
|
||||
//static final Color softRed = Color(0xFFFFA0B0);
|
||||
|
||||
OpaqueThemeType GetNeon1Theme(String mode) {
|
||||
if (mode == mode_dark) {
|
||||
return Neon1Dark();
|
||||
|
@ -50,18 +32,24 @@ class Neon1Dark extends CwtchDark {
|
|||
|
||||
get backgroundMainColor => background; // darkGreyPurple;
|
||||
get backgroundPaneColor => header; //darkGreyPurple;
|
||||
//get backgroundHilightElementColor => deepPurple;
|
||||
get mainTextColor => font; //whiteishPurple;
|
||||
//get sendHintTextColor => mauvePurple;
|
||||
//get hilightElementColor => purple;
|
||||
get defaultButtonColor => accent; //hotPink;
|
||||
/*get defaultButtonTextColor => whiteishPurple;
|
||||
get textfieldHintColor => mainTextColor; //TODO pick
|
||||
get toolbarIconColor => settings; //whiteishPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; // mauvePurple;
|
||||
get messageFromMeTextColor => font; //whiteishPurple;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //deepPurple;
|
||||
get messageFromOtherTextColor => font; //whiteishPurple;
|
||||
|
||||
/*get backgroundHilightElementColor => deepPurple;
|
||||
get sendHintTextColor => mauvePurple;
|
||||
get hilightElementColor => purple;
|
||||
get defaultButtonTextColor => whiteishPurple;
|
||||
get defaultButtonDisabledColor => lightGrey;
|
||||
get defaultButtonDisabledTextColor => darkGreyPurple;
|
||||
get textfieldBackgroundColor => deepPurple;
|
||||
get textfieldBorderColor => deepPurple;*/
|
||||
get textfieldHintColor => mainTextColor; //TODO pick
|
||||
/* get textfieldErrorColor => hotPink;
|
||||
get textfieldBorderColor => deepPurple;
|
||||
get textfieldErrorColor => hotPink;
|
||||
get scrollbarDefaultColor => purple;
|
||||
get portraitBackgroundColor => deepPurple;
|
||||
get portraitOnlineBorderColor => whiteishPurple;
|
||||
|
@ -73,11 +61,7 @@ class Neon1Dark extends CwtchDark {
|
|||
get portraitProfileBadgeColor => mauvePurple;
|
||||
get portraitProfileBadgeTextColor => darkGreyPurple;
|
||||
get dropShadowColor => mauvePurple;*/
|
||||
get toolbarIconColor => settings; //whiteishPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; // mauvePurple;
|
||||
get messageFromMeTextColor => font; //whiteishPurple;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //deepPurple;
|
||||
get messageFromOtherTextColor => font; //whiteishPurple;
|
||||
|
||||
}
|
||||
|
||||
class Neon1Light extends CwtchLight {
|
||||
|
@ -95,31 +79,32 @@ class Neon1Light extends CwtchLight {
|
|||
|
||||
get backgroundMainColor => background; //whitePurple;
|
||||
get backgroundPaneColor => header; //softPurple;
|
||||
//get backgroundHilightElementColor => softPurple;
|
||||
get mainTextColor => settings;
|
||||
//get sendHintTextColor => purple;
|
||||
//get hilightElementColor => purple; //darkPurple; // todo shouldn't be this, too dark, makes font unreadable
|
||||
get defaultButtonColor => accent; // hotPink;
|
||||
/*get defaultButtonTextColor => whitePurple; // ?
|
||||
get defaultButtonDisabledColor => softGrey;
|
||||
get textfieldBackgroundColor => purple;
|
||||
get textfieldBorderColor => purple; */
|
||||
get textfieldHintColor => font; //TODO pick
|
||||
//get textfieldErrorColor => hotPink;
|
||||
get scrollbarDefaultColor => accent;
|
||||
/*get portraitBackgroundColor => softPurple;
|
||||
get portraitOnlineBorderColor => greyPurple;
|
||||
get portraitOfflineBorderColor => greyPurple;
|
||||
get portraitBlockedBorderColor => softGrey;
|
||||
get portraitBlockedTextColor => softGrey;*/
|
||||
get portraitContactBadgeColor => accent;
|
||||
/*get portraitContactBadgeTextColor => whitePurple;
|
||||
get portraitProfileBadgeColor => brightPurple;
|
||||
get portraitProfileBadgeTextColor => whitePurple;
|
||||
get dropShadowColor => purple;*/
|
||||
get toolbarIconColor => settings; //darkPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; //brightPurple;
|
||||
get messageFromMeTextColor => font; //mainTextColor;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //purple;
|
||||
get messageFromOtherTextColor => font; //darkPurple;
|
||||
|
||||
/*get backgroundHilightElementColor => softPurple;
|
||||
get sendHintTextColor => purple;
|
||||
get hilightElementColor => purple; //darkPurple; // todo shouldn't be this, too dark, makes font unreadable
|
||||
get defaultButtonTextColor => whitePurple; // ?
|
||||
get defaultButtonDisabledColor => softGrey;
|
||||
get textfieldBackgroundColor => purple;
|
||||
get textfieldBorderColor => purple;
|
||||
get textfieldErrorColor => hotPink;
|
||||
get portraitBackgroundColor => softPurple;
|
||||
get portraitOnlineBorderColor => greyPurple;
|
||||
get portraitOfflineBorderColor => greyPurple;
|
||||
get portraitBlockedBorderColor => softGrey;
|
||||
get portraitBlockedTextColor => softGrey;
|
||||
get portraitContactBadgeTextColor => whitePurple;
|
||||
get portraitProfileBadgeColor => brightPurple;
|
||||
get portraitProfileBadgeTextColor => whitePurple;
|
||||
get dropShadowColor => purple;*/
|
||||
}
|
|
@ -3,6 +3,8 @@ import 'dart:core';
|
|||
|
||||
import 'package:cwtch/themes/cwtch.dart';
|
||||
import 'package:cwtch/themes/neon1.dart';
|
||||
import 'package:cwtch/themes/vampire.dart';
|
||||
import 'package:cwtch/themes/witch.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:cwtch/settings.dart';
|
||||
|
||||
|
@ -11,6 +13,8 @@ const mode_dark = "dark";
|
|||
|
||||
final themes = { cwtch_theme: {mode_light: CwtchLight(), mode_dark: CwtchDark()},
|
||||
neon1_theme: {mode_light: Neon1Light(), mode_dark: Neon1Dark()},
|
||||
witch_theme: {mode_light: WitchLight(), mode_dark: WitchDark()},
|
||||
vampire_theme: {mode_light: VampireLight(), mode_dark: VampireDark()},
|
||||
};
|
||||
|
||||
OpaqueThemeType getTheme(String themeId, String mode) {
|
||||
|
@ -68,7 +72,7 @@ abstract class OpaqueThemeType {
|
|||
get sendHintTextColor => red;
|
||||
|
||||
get defaultButtonColor => red;
|
||||
get defaultButtonActiveColor => mode == mode_light ? darken(defaultButtonColor) : lighten(defaultButtonColor);
|
||||
get defaultButtonActiveColor => /*mode == mode_light ? darken(defaultButtonColor) :*/ lighten(defaultButtonColor);
|
||||
get defaultButtonTextColor => red;
|
||||
get defaultButtonDisabledColor => red;
|
||||
get textfieldBackgroundColor => red;
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
import 'dart:ui';
|
||||
import 'dart:core';
|
||||
|
||||
import 'package:cwtch/themes/cwtch.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'opaque.dart';
|
||||
|
||||
final vampire_theme = "vampire";
|
||||
final vampire_name = "Vampire"; //Todo translate
|
||||
|
||||
OpaqueThemeType GetVampireTheme(String mode) {
|
||||
if (mode == mode_dark) {
|
||||
return VampireDark();
|
||||
} else {
|
||||
return VampireLight();
|
||||
}
|
||||
}
|
||||
|
||||
class VampireDark extends CwtchDark {
|
||||
static final Color background = Color(0xFF281831);
|
||||
static final Color header = Color(0xFF281831);
|
||||
static final Color userBubble = Color(0xFF9A1218);
|
||||
static final Color peerBubble = Color(0xFF422850);
|
||||
static final Color font = Color(0xFFFFFFFF);
|
||||
static final Color settings = Color(0xFFFDFFFD);
|
||||
static final Color accent = Color(0xFF8E64A5);
|
||||
|
||||
get name => vampire_name;
|
||||
get theme => vampire_theme;
|
||||
get mode => mode_dark;
|
||||
|
||||
get backgroundMainColor => background; // darkGreyPurple;
|
||||
get backgroundPaneColor => header; //darkGreyPurple;
|
||||
get mainTextColor => font; //whiteishPurple;
|
||||
get defaultButtonColor => accent; //hotPink;
|
||||
get textfieldHintColor => mainTextColor; //TODO pick
|
||||
get toolbarIconColor => settings; //whiteishPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; // mauvePurple;
|
||||
get messageFromMeTextColor => font; //whiteishPurple;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //deepPurple;
|
||||
get messageFromOtherTextColor => font; //whiteishPurple;
|
||||
}
|
||||
|
||||
class VampireLight extends CwtchLight {
|
||||
static final Color background = Color(0xFFFFFDFD);
|
||||
static final Color header = Color(0xFFD8C7E1);
|
||||
static final Color userBubble = Color(0xFFD8C7E1);
|
||||
static final Color peerBubble = Color(0xFFFFEBEE);
|
||||
static final Color font = Color(0xFF281831);
|
||||
static final Color settings = Color(0xFF281831);
|
||||
static final Color accent = Color(0xFF8E64A5);
|
||||
|
||||
get name => vampire_name;
|
||||
get theme => vampire_theme;
|
||||
get mode => mode_light;
|
||||
|
||||
get backgroundMainColor => background; //whitePurple;
|
||||
get backgroundPaneColor => header; //softPurple;
|
||||
get mainTextColor => settings;
|
||||
get defaultButtonColor => accent; // hotPink;
|
||||
get textfieldHintColor => font; //TODO pick
|
||||
get scrollbarDefaultColor => accent;
|
||||
get portraitContactBadgeColor => accent;
|
||||
get toolbarIconColor => settings; //darkPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; //brightPurple;
|
||||
get messageFromMeTextColor => font; //mainTextColor;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //purple;
|
||||
get messageFromOtherTextColor => font; //darkPurple;
|
||||
}
|
|
@ -0,0 +1,70 @@
|
|||
import 'dart:ui';
|
||||
import 'dart:core';
|
||||
|
||||
import 'package:cwtch/themes/cwtch.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'opaque.dart';
|
||||
|
||||
final witch_theme = "witch";
|
||||
final witch_name = "Witch"; //Todo translate
|
||||
|
||||
OpaqueThemeType GetWitchTheme(String mode) {
|
||||
if (mode == mode_dark) {
|
||||
return WitchDark();
|
||||
} else {
|
||||
return WitchLight();
|
||||
}
|
||||
}
|
||||
|
||||
class WitchDark extends CwtchDark {
|
||||
static final Color background = Color(0xFF0E1E0E);
|
||||
static final Color header = Color(0xFF0E1E0E);
|
||||
static final Color userBubble = Color(0xFF1B5E20);
|
||||
static final Color peerBubble = Color(0xFF003300);
|
||||
static final Color font = Color(0xFFFFFFFF);
|
||||
static final Color settings = Color(0xFFFDFFFD);
|
||||
static final Color accent = Color(0xFFD20070);
|
||||
|
||||
get name => witch_name;
|
||||
get theme => witch_theme;
|
||||
get mode => mode_dark;
|
||||
|
||||
get backgroundMainColor => background; // darkGreyPurple;
|
||||
get backgroundPaneColor => header; //darkGreyPurple;
|
||||
get mainTextColor => font; //whiteishPurple;
|
||||
get defaultButtonColor => accent; //hotPink;
|
||||
get textfieldHintColor => mainTextColor; //TODO pick
|
||||
get toolbarIconColor => settings; //whiteishPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; // mauvePurple;
|
||||
get messageFromMeTextColor => font; //whiteishPurple;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //deepPurple;
|
||||
get messageFromOtherTextColor => font; //whiteishPurple;
|
||||
}
|
||||
|
||||
class WitchLight extends CwtchLight {
|
||||
static final Color background = Color(0xFFFDFFFD);
|
||||
static final Color header = Color(0xFF80E27E);
|
||||
static final Color userBubble = Color(0xFF80E27E);
|
||||
static final Color peerBubble = Color(0xFFE8F5E9);
|
||||
static final Color font = Color(0xFF0E1E0E);
|
||||
static final Color settings = Color(0xFF0E1E0E);
|
||||
static final Color accent = Color(0xFFD20070);
|
||||
|
||||
get name => witch_name;
|
||||
get theme => witch_theme;
|
||||
get mode => mode_light;
|
||||
|
||||
get backgroundMainColor => background; //whitePurple;
|
||||
get backgroundPaneColor => header; //softPurple;
|
||||
get mainTextColor => settings;
|
||||
get defaultButtonColor => accent; // hotPink;
|
||||
get textfieldHintColor => font; //TODO pick
|
||||
get scrollbarDefaultColor => accent;
|
||||
get portraitContactBadgeColor => accent;
|
||||
get toolbarIconColor => settings; //darkPurple;
|
||||
get messageFromMeBackgroundColor => userBubble; //brightPurple;
|
||||
get messageFromMeTextColor => font; //mainTextColor;
|
||||
get messageFromOtherBackgroundColor => peerBubble; //purple;
|
||||
get messageFromOtherTextColor => font; //darkPurple;
|
||||
}
|
|
@ -129,7 +129,7 @@ class _AddEditServerViewState extends State<AddEditServerView> {
|
|||
Provider.of<FlwtchState>(context, listen: false).cwtch.StopServer(serverInfoState.onion);
|
||||
}
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.negative_heart_24px, color: settings.current().mainTextColor),
|
||||
)),
|
||||
|
@ -146,7 +146,7 @@ class _AddEditServerViewState extends State<AddEditServerView> {
|
|||
Provider.of<FlwtchState>(context, listen: false).cwtch.SetServerAttribute(serverInfoState.onion, "autostart", value ? "true" : "false");
|
||||
}
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.favorite_24dp, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
|
|
@ -77,7 +77,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.change_theme, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -153,7 +153,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.block_unknown, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -166,7 +166,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.streamer_bunnymask, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -183,7 +183,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.enable_experiments, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -204,7 +204,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.enable_groups, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -224,7 +224,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
// Save Settings...
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.dns_24px, color: settings.current().mainTextColor),
|
||||
)),
|
||||
|
@ -240,7 +240,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
}
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(Icons.attach_file, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
@ -256,7 +256,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
|||
}
|
||||
saveSettings(context);
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(Icons.link, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
|
|
@ -137,7 +137,7 @@ class _PeerSettingsViewState extends State<PeerSettingsView> {
|
|||
Provider.of<FlwtchState>(context, listen: false).cwtch.SendProfileEvent(profileOnion, setPeerAttributeJson);
|
||||
}
|
||||
},
|
||||
activeTrackColor: settings.theme.defaultButtonActiveColor,
|
||||
activeTrackColor: settings.theme.defaultButtonColor,
|
||||
inactiveTrackColor: settings.theme.defaultButtonDisabledColor,
|
||||
secondary: Icon(CwtchIcons.block_peer, color: settings.current().mainTextColor),
|
||||
),
|
||||
|
|
|
@ -23,7 +23,7 @@ class _ContactRowState extends State<ContactRow> {
|
|||
var contact = Provider.of<ContactInfoState>(context);
|
||||
return Card(
|
||||
clipBehavior: Clip.antiAlias,
|
||||
color: Provider.of<AppState>(context).selectedConversation == contact.onion ? Provider.of<Settings>(context).theme.backgroundHilightElementColor : null,
|
||||
color: Provider.of<AppState>(context).selectedConversation == contact.identifier ? Provider.of<Settings>(context).theme.backgroundHilightElementColor : null,
|
||||
borderOnForeground: false,
|
||||
margin: EdgeInsets.all(0.0),
|
||||
child: InkWell(
|
||||
|
|
Loading…
Reference in New Issue