removing unused theme definitions

This commit is contained in:
Dan Ballard 2021-12-06 17:40:10 -08:00
parent 9a7ce2afc7
commit f6a4d5c3fa
13 changed files with 512 additions and 1514 deletions

View File

@ -1,6 +1,7 @@
import 'dart:convert';
import 'package:cwtch/config.dart';
import 'package:cwtch/notification_manager.dart';
import 'package:cwtch/themes/cwtch.dart';
import 'package:cwtch/views/messageview.dart';
import 'package:cwtch/widgets/rightshiftfixer.dart';
import 'package:flutter/foundation.dart';
@ -21,7 +22,7 @@ import 'models/servers.dart';
import 'views/profilemgrview.dart';
import 'views/splashView.dart';
import 'dart:io' show Platform, exit;
import 'opaque.dart';
import 'themes/opaque.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
var globalSettings = Settings(Locale("en", ''), OpaqueDark());

View File

@ -5,7 +5,7 @@ import 'package:cwtch/errorHandler.dart';
import 'package:cwtch/settings.dart';
import 'licenses.dart';
import 'main.dart';
import 'opaque.dart';
import 'themes/opaque.dart';
import 'dart:convert';
import 'dart:io';

File diff suppressed because it is too large Load Diff

View File

@ -2,10 +2,11 @@ import 'dart:collection';
import 'dart:ui';
import 'dart:core';
import 'package:cwtch/themes/cwtch.dart';
import 'package:flutter/material.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'opaque.dart';
import 'themes/opaque.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
const TapirGroupsExperiment = "tapir-groups-experiment";

275
lib/themes/cwtch.dart Normal file
View File

@ -0,0 +1,275 @@
import 'dart:ui';
import 'dart:core';
import 'package:flutter/material.dart';
import 'opaque.dart';
class OpaqueDark extends OpaqueThemeType {
static final Color darkGreyPurple = Color(0xFF281831);
static final Color deepPurple = Color(0xFF422850);
static final Color mauvePurple = Color(0xFF8E64A5);
static final Color purple = Color(0xFFDFB9DE);
static final Color whitePurple = Color(0xFFE3DFE4);
static final Color softPurple = Color(0xFFFDF3FC);
static final Color pink = Color(0xFFE85DA1);
static final Color hotPink = Color(0xFFD01972);
static final Color lightGrey = Color(0xFF9E9E9E);
static final Color softGreen = Color(0xFFA0FFB0);
static final Color softRed = Color(0xFFFFA0B0);
String identifier() {
return "dark";
}
Color backgroundMainColor() {
return darkGreyPurple;
}
Color backgroundPaneColor() {
return darkGreyPurple;
}
Color backgroundHilightElementColor() {
return deepPurple;
}
Color mainTextColor() {
return whitePurple;
}
Color altTextColor() {
return mauvePurple;
}
Color hilightElementTextColor() {
return purple;
}
Color defaultButtonColor() {
return hotPink;
}
Color defaultButtonActiveColor() {
return pink;
}
Color defaultButtonTextColor() {
return whitePurple;
}
Color defaultButtonDisabledTextColor() {
return darkGreyPurple;
}
Color textfieldBackgroundColor() {
return deepPurple;
}
Color textfieldBorderColor() {
return deepPurple;
}
Color textfieldErrorColor() {
return hotPink;
}
Color scrollbarDefaultColor() {
return purple;
}
Color scrollbarActiveColor() {
return hotPink;
}
Color portraitOnlineBorderColor() {
return whitePurple;
}
Color portraitOfflineBorderColor() {
return purple;
}
Color portraitBlockedBorderColor() {
return lightGrey;
}
Color portraitBlockedTextColor() {
return lightGrey;
}
Color portraitContactBadgeColor() {
return hotPink;
}
Color portraitContactBadgeTextColor() {
return whitePurple;
}
Color portraitProfileBadgeColor() {
return mauvePurple;
}
Color portraitProfileBadgeTextColor() {
return darkGreyPurple;
}
Color dropShadowColor() {
return mauvePurple;
}
Color toolbarIconColor() {
return whitePurple;
}
Color messageFromMeBackgroundColor() {
return mauvePurple;
}
Color messageFromMeTextColor() {
return whitePurple;
}
Color messageFromOtherBackgroundColor() {
return deepPurple;
}
Color messageFromOtherTextColor() {
return whitePurple;
}
}
class OpaqueLight extends OpaqueThemeType {
static final Color whitePurple = Color(0xFFFFFDFF);
static final Color softPurple = Color(0xFFFDF3FC);
static final Color purple = Color(0xFFDFB9DE);
static final Color brightPurple = Color(0xFFD1B0E0);
static final Color darkPurple = Color(0xFF350052);
static final Color greyPurple = Color(0xFF775F84);
static final Color pink = Color(0xFFE85DA1);
static final Color hotPink = Color(0xFFD01972);
static final Color lightGrey = Color(0xFFB3B6B3);
static final Color softGreen = Color(0xFFA0FFB0);
static final Color softRed = Color(0xFFFFA0B0);
String identifier() {
return "light";
}
Color backgroundMainColor() {
return whitePurple;
}
Color backgroundPaneColor() {
return softPurple;
}
Color backgroundHilightElementColor() {
return softPurple;
}
Color mainTextColor() {
return darkPurple;
}
Color altTextColor() {
return purple;
}
Color hilightElementTextColor() {
return darkPurple;
}
Color defaultButtonColor() {
return hotPink;
}
Color defaultButtonActiveColor() {
return pink;
}
Color defaultButtonTextColor() {
return whitePurple;
}
Color defaultButtonDisabledColor() {
return lightGrey;
}
Color textfieldBackgroundColor() {
return purple;
}
Color textfieldBorderColor() {
return purple;
}
Color textfieldErrorColor() {
return hotPink;
}
Color scrollbarDefaultColor() {
return darkPurple;
}
Color scrollbarActiveColor() {
return hotPink;
}
Color portraitOnlineBorderColor() {
return greyPurple;
}
Color portraitOfflineBorderColor() {
return greyPurple;
}
Color portraitBlockedBorderColor() {
return lightGrey;
}
Color portraitBlockedTextColor() {
return lightGrey;
}
Color portraitContactBadgeColor() {
return hotPink;
}
Color portraitContactBadgeTextColor() {
return whitePurple;
}
Color portraitProfileBadgeColor() {
return brightPurple;
}
Color portraitProfileBadgeTextColor() {
return whitePurple;
}
Color dropShadowColor() {
return purple;
}
Color toolbarIconColor() {
return darkPurple;
}
Color messageFromMeBackgroundColor() {
return brightPurple;
}
Color messageFromMeTextColor() {
return mainTextColor();
}
Color messageFromOtherBackgroundColor() {
return purple;
}
Color messageFromOtherTextColor() {
return darkPurple;
}
}

226
lib/themes/opaque.dart Normal file
View File

@ -0,0 +1,226 @@
import 'dart:ui';
import 'dart:core';
import 'package:flutter/material.dart';
import 'package:cwtch/settings.dart';
abstract class OpaqueThemeType {
static final Color red = Color(0xFFFF0000);
String identifier() {
return "dummy";
}
Color backgroundMainColor() {
return red;
}
Color backgroundPaneColor() {
return red;
}
Color backgroundHilightElementColor() {
return red;
}
Color mainTextColor() {
return red;
}
Color altTextColor() {
return red;
}
Color hilightElementTextColor() {
return red;
}
Color defaultButtonColor() {
return red;
}
Color defaultButtonActiveColor() {
return red;
}
Color defaultButtonTextColor() {
return red;
}
Color defaultButtonDisabledColor() {
return red;
}
Color textfieldBackgroundColor() {
return red;
}
Color textfieldBorderColor() {
return red;
}
Color textfieldErrorColor() {
return red;
}
Color scrollbarDefaultColor() {
return red;
}
Color scrollbarActiveColor() {
return red;
}
Color portraitOnlineBorderColor() {
return red;
}
Color portraitOfflineBorderColor() {
return red;
}
Color portraitBlockedBorderColor() {
return red;
}
Color portraitBlockedTextColor() {
return red;
}
Color portraitContactBadgeColor() {
return red;
}
Color portraitContactBadgeTextColor() {
return red;
}
Color portraitProfileBadgeColor() {
return red;
}
Color portraitProfileBadgeTextColor() {
return red;
}
Color dropShadowColor() {
return red;
}
Color toolbarIconColor() {
return red;
}
Color messageFromMeBackgroundColor() {
return red;
}
Color messageFromMeTextColor() {
return red;
}
Color messageFromOtherBackgroundColor() {
return red;
}
Color messageFromOtherTextColor() {
return red;
}
// ... more to come
// Sizes
double contactOnionTextSize() {
return 18;
}
}
ThemeData mkThemeData(Settings opaque) {
return ThemeData(
visualDensity: VisualDensity.adaptivePlatformDensity,
primarySwatch: Colors.red,
primaryIconTheme: IconThemeData(
color: opaque.current().mainTextColor(),
),
primaryColor: opaque.current().backgroundMainColor(),
canvasColor: opaque.current().backgroundPaneColor(),
backgroundColor: opaque.current().backgroundMainColor(),
highlightColor: opaque.current().hilightElementTextColor(),
iconTheme: IconThemeData(
color: opaque.current().toolbarIconColor(),
),
cardColor: opaque.current().backgroundMainColor(),
appBarTheme: AppBarTheme(
backgroundColor: opaque.current().backgroundPaneColor(),
iconTheme: IconThemeData(
color: opaque.current().mainTextColor(),
),
titleTextStyle: TextStyle(
color: opaque.current().mainTextColor(),
),
actionsIconTheme: IconThemeData(
color: opaque.current().mainTextColor(),
)),
bottomNavigationBarTheme: BottomNavigationBarThemeData(type: BottomNavigationBarType.fixed, backgroundColor: opaque.current().backgroundHilightElementColor()),
textButtonTheme: TextButtonThemeData(
style: ButtonStyle(
backgroundColor: MaterialStateProperty.all(opaque.current().defaultButtonColor()),
foregroundColor: MaterialStateProperty.all(opaque.current().defaultButtonTextColor()),
overlayColor: MaterialStateProperty.all(opaque.current().defaultButtonActiveColor()),
padding: MaterialStateProperty.all(EdgeInsets.all(20))),
),
elevatedButtonTheme: ElevatedButtonThemeData(
style: ButtonStyle(
backgroundColor: MaterialStateProperty.resolveWith((states) => states.contains(MaterialState.disabled) ? opaque.current().defaultButtonDisabledColor() : opaque.current().defaultButtonColor()),
foregroundColor: MaterialStateProperty.all(opaque.current().defaultButtonTextColor()),
overlayColor: MaterialStateProperty.resolveWith((states) => (states.contains(MaterialState.pressed) && states.contains(MaterialState.hovered))
? opaque.current().defaultButtonActiveColor()
: states.contains(MaterialState.disabled)
? opaque.current().defaultButtonDisabledColor()
: null),
enableFeedback: true,
splashFactory: InkRipple.splashFactory,
padding: MaterialStateProperty.all(EdgeInsets.all(20)),
shape: MaterialStateProperty.all(RoundedRectangleBorder(
borderRadius: BorderRadius.circular(18.0),
)),
),
),
scrollbarTheme: ScrollbarThemeData(
isAlwaysShown: false, thumbColor: MaterialStateProperty.all(opaque.current().scrollbarActiveColor()), trackColor: MaterialStateProperty.all(opaque.current().scrollbarDefaultColor())),
tabBarTheme: TabBarTheme(indicator: UnderlineTabIndicator(borderSide: BorderSide(color: opaque.current().defaultButtonActiveColor()))),
dialogTheme: DialogTheme(
backgroundColor: opaque.current().backgroundPaneColor(),
titleTextStyle: TextStyle(color: opaque.current().mainTextColor()),
contentTextStyle: TextStyle(color: opaque.current().mainTextColor())),
textTheme: TextTheme(
headline1: TextStyle(color: opaque.current().mainTextColor()),
headline2: TextStyle(color: opaque.current().mainTextColor()),
headline3: TextStyle(color: opaque.current().mainTextColor()),
headline4: TextStyle(color: opaque.current().mainTextColor()),
headline5: TextStyle(color: opaque.current().mainTextColor()),
headline6: TextStyle(color: opaque.current().mainTextColor()),
bodyText1: TextStyle(color: opaque.current().mainTextColor()),
bodyText2: TextStyle(color: opaque.current().mainTextColor()),
subtitle1: TextStyle(color: opaque.current().mainTextColor()),
subtitle2: TextStyle(color: opaque.current().mainTextColor()),
caption: TextStyle(color: opaque.current().mainTextColor()),
button: TextStyle(color: opaque.current().mainTextColor()),
overline: TextStyle(color: opaque.current().mainTextColor())),
switchTheme: SwitchThemeData(
overlayColor: MaterialStateProperty.all(opaque.current().defaultButtonActiveColor()),
thumbColor: MaterialStateProperty.all(opaque.current().mainTextColor()),
trackColor: MaterialStateProperty.all(opaque.current().dropShadowColor()),
),
floatingActionButtonTheme: FloatingActionButtonThemeData(
backgroundColor: opaque.current().defaultButtonColor(),
hoverColor: opaque.current().defaultButtonActiveColor(),
enableFeedback: true,
splashColor: opaque.current().defaultButtonActiveColor()),
textSelectionTheme: TextSelectionThemeData(
cursorColor: opaque.current().defaultButtonActiveColor(), selectionColor: opaque.current().defaultButtonActiveColor(), selectionHandleColor: opaque.current().defaultButtonActiveColor()),
);
}

View File

@ -16,7 +16,7 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import '../cwtch_icons_icons.dart';
import '../errorHandler.dart';
import '../main.dart';
import '../opaque.dart';
import '../themes/opaque.dart';
import '../settings.dart';
class AddEditProfileView extends StatefulWidget {

View File

@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:cwtch/opaque.dart';
import 'package:cwtch/themes/opaque.dart';
import 'package:provider/provider.dart';
import '../settings.dart';

View File

@ -1,50 +0,0 @@
#!/bin/bash
themes="/home/erinn/go/src/git.openprivacy.ca/openprivacy/opaque/theme"
outfile="./lib/opaque.dart"
if [ -e "$outfile" ]; then
mv "$outfile" "${outfile}.bak"
fi
echo "// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT BY HAND AS CHANGES WILL BE OVERRIDDEN." > "$outfile"
echo "// TO EDIT THE THEME, SEE https://git.openprivacy.ca/openprivacy/opaque/" >> "$outfile"
echo "// FOR HOW THIS FILE IS GENERATED, SEE ../regenerate_opaque_theme.sh" >> "$outfile"
sed 's/import QtQuick 2\.0//g' "${themes}/ThemeType.qml" | \
sed "s/QtObject ./import 'dart:ui\';\nimport 'dart:core';\nabstract class OpaqueThemeType {\n static final Color red = Color(0xFFFF0000);/g" | \
sed 's/\(property color\|var\)/Color/g' | \
sed 's/\(:\| =\) ".*"/(){return red;}/g' >> "$outfile"
echo -e "\n\n" >> "$outfile"
sed 's/ThemeType/class CwtchDark extends OpaqueThemeType/g' "${themes}/CwtchDark.qml" | \
sed 's/readonly property color \(.*\): "#\(\w*\)"/static final Color \1 = Color(0xFF\2);/g' | \
sed 's/\(\w*\): \(\w*\)/Color \1() { return \2; }/g' >> "$outfile"
echo -e "\n\n" >> "$outfile"
sed 's/ThemeType/class CwtchLight extends OpaqueThemeType/g' "${themes}/CwtchLight.qml" | \
sed 's/readonly property color \(.*\): "#\(\w*\)"/static final Color \1 = Color(0xFF\2);/g' | \
sed 's/\(\w*\): \(\w*\)/Color \1() { return \2; }/g' >> "$outfile"
echo -e "\n\n" >> "$outfile"
sed 's/\(pragma Singleton\|import QtQuick 2\.0\)//g' "${themes}/Theme.qml" | \
sed 's|//.*$||g' | \
sed 's/theme\./current./g' | \
sed 's/property color/property Color/g' | \
sed 's/readonly property Color \(.*\): \([a-zA-Z0-9._]*\)/Color \1() { return \2(); }/g' | \
#to preserve int values: #static int \1() { return \2; }/g' | \
sed 's/readonly property int \(.*\): \(.*\)/int \1() { return \2; }/g' | \
sed 's/readonly property variant \([a-zA-Z0-9._]*\): \(.*\)$/var \1 = \2;/g' | \
sed 's/color/Color/g' | \
sed 's/: \(.+\)/ = \1;/g' | \
sed 's/property ThemeType \(\w*\): \(.*\)../static final OpaqueThemeType \1 = \2();/g' | \
sed 's/final OpaqueThemeType theme = .*$/Opaque current() { return dark; }/' | \
sed 's/^.*themeScaleNew.*$/int scale = 2;\n static final String gcdOS = "linux";/g' | \
sed 's/gcd.os/gcdOS/g' | \
sed 's/return \([a-zA-Z]\+\) ;/return \1();/g' | \
sed 's/return \([a-zA-Z]\+\) + \([a-zA-Z]\+\);/return \1() + \2();/g' | \
sed 's/Item/class Opaque extends OpaqueThemeType/' | \
sed 's/current\./current()./g' >> "$outfile"

View File

@ -6,7 +6,7 @@
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:cwtch/opaque.dart';
import 'package:cwtch/themes/opaque.dart';
import 'package:cwtch/settings.dart';
import 'package:cwtch/widgets/buttontextfield.dart';
import 'package:flutter_test/flutter_test.dart';

View File

@ -6,7 +6,7 @@
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:cwtch/opaque.dart';
import 'package:cwtch/themes/opaque.dart';
import 'package:cwtch/settings.dart';
import 'package:cwtch/widgets/cwtchlabel.dart';
import 'package:flutter_test/flutter_test.dart';

View File

@ -6,7 +6,7 @@
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:cwtch/opaque.dart';
import 'package:cwtch/themes/opaque.dart';
import 'package:cwtch/settings.dart';
import 'package:cwtch/widgets/profileimage.dart';
import 'package:flutter_test/flutter_test.dart';

View File

@ -6,7 +6,7 @@
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:cwtch/opaque.dart';
import 'package:cwtch/themes/opaque.dart';
import 'package:cwtch/settings.dart';
import 'package:cwtch/widgets/textfield.dart';
import 'package:flutter_test/flutter_test.dart';